我尝试实现一些半自动的 sftp
上传/部署。主要关键是 NOT 上传所有文件。我不知道要上传哪些文件,但我知道哪些文件不该上传。
我的 bash 脚本如下所示:
#!/bin/bash
IP="123.123.123.123"
HOSTNAME="ftp.my-host.com"
PATH="subdirectory"
sftp username@$HOSTNAME:$PATH < "sftp-pattern"
在 sftp-pattern
文件中我想存储我的 sftp 命令。但我找不到任何提示如何忽略几种模式。像 *.sql
。
理想情况下,我会忽略所有被 gitignored 的东西。
我没有有ssh连接。
最佳答案
由于您使用的是 shell 脚本,因此可以使用循环。这样的事情应该有效。
#!/bin/bash
IP="123.123.123.123"
HOST="ftp.my-host.com"
DIR="/tmp/"
for f in `/bin/ls $DIR`
do
if echo $f | /usr/bin/grep '.sql' > /dev/null
then
echo SKIPPING $f
else
sftp username@$HOST:$DIR/$f
fi
done
关于linux - sftp 上传 bash 忽略文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48650524/