【发布时间】:2019-02-27 11:16:51
【问题描述】:
我想创建一个 shell 脚本,它将使用 SFTP 重命名远程服务器中特定目录中的所有 .txt 文件(将首先下载文件,然后在远程服务器中重命名)。请检查以下尝试:
sftp user@host <<EOF
cd $remoteDir
get *.txt
ls *.txt | awk '{printf "rename %s %s.done\n",$0,$0 ;}'
exit
EOF
从语句ls *.txt | awk '{printf "rename %s %s.done\n",$0,$0 ;}' 会生成并打印出rename 命令列表,我的问题是,如何运行从awk printf 生成的这些命令?
【问题讨论】:
-
不清楚,很高兴您已经展示了您正在尝试的内容,但您错过了告诉我们您的问题的完整情况的部分,请添加更多详细信息并让我们知道。
-
@RavinderSingh13 我已经编辑了帖子,如果您需要更多信息,请告诉我。
-
您要重命名服务器上的文件,还是您下载的副本?
-
@jhnc 重命名服务器上的文件