Linux sftp上载bash忽略文件
我试图实现一些半自动的Linux sftp上载bash忽略文件,linux,bash,git,sftp,Linux,Bash,Git,Sftp,我试图实现一些半自动的sftp上传/部署。主键为非上传所有文件。我不知道哪些文件上传,但我知道哪些文件不上传 我的bash脚本如下所示: #!/bin/bash IP="123.123.123.123" HOSTNAME="ftp.my-host.com" PATH="subdirectory" sftp username@$HOSTNAME:$PATH < "sftp-pattern" #/bin/bash IP=“123.123.123.123” HOSTNAME=“ftp.my
sftp
上传/部署。主键为非上传所有文件。我不知道哪些文件上传,但我知道哪些文件不上传
我的bash脚本如下所示:
#!/bin/bash
IP="123.123.123.123"
HOSTNAME="ftp.my-host.com"
PATH="subdirectory"
sftp username@$HOSTNAME:$PATH < "sftp-pattern"
#/bin/bash
IP=“123.123.123.123”
HOSTNAME=“ftp.my host.com”
PATH=“子目录”
sftp用户名@$HOSTNAME:$PATH<“sftp模式”
在sftp模式
文件中,我想存储我的sftp命令。但我找不到任何关于如何忽略几个模式的提示。比如*.sql
理想情况下,我会忽略所有被忽略的事情
我没有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
答案应该如@Clijsters所述。它的功能更加丰富,不需要对循环和管道进行调整
不过,若您只想排除sql,那个么dwrights解决方案是可行的
谢谢 你可能会觉得有用。它可以像
git ftp push
一样使用,然后将当前HEAD
推送到ftp遥控器。我不确定SFTP。听起来很棒!!谢谢顺便说一句:PATH
是一个重要的环境变量。感谢@Cyrus!!顺便说一句:最后我用gitium解决了这个问题,因为这个用例是wordpress页面。gitium似乎得到了积极的维护,并得到了我一直在寻找的支持。