linux - sftp 上传 bash 忽略文件

标签 linux bash git sftp

我尝试实现一些半自动的 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/

相关文章:

linux - 如何在tailnh命令中打印其他命令

linux - 无法通过 ftrace 跟踪系统调用

xml - 如何使用 xmlstarlet 编辑具有相似结构元素的 xml 文件?

bash - 给定一个 logfile.txt,我只想提取 java 脚本名称;例如使用 bash 脚本的 filename.js

Git 通过摘要代理认证

c++ - linux/solaris 扩展路径 C++

linux - 当我运行我的 pascal 程序时出现访问冲突,如何解决? (免费帕斯卡)

c# - 使用参数从 .Net Core 运行 bash 命令

git - 使用 Powershell 下载随机 GitHub 存储库

Git 电子邮件 Hook 以包含提交消息和更改的文件