像这样的东西:
sftp user@example.com && put /tmp/test.txt /tmp/
其中put是sftp命令.
我的想法是从bash脚本将文件从本地服务器放到远程服务器,在远程服务器上只允许sftp.
解决方法 方法1:echo "put /tmp/test.txt /tmp/" | sftp user@example.com
方法2:
使用-b选项:
总结-b batchfile
Batch mode reads a serIEs of commands from an input batchfile instead of stdin. Since it lacks user interaction it should be used in conjunction with non-interactive authentication. A batchfile of
-' may be used to indicate standard input. sftp will abort if any of the following commands fail: get,put,rename,ln,rm,mkdir,chdir,ls,lchdir,chmod,chown,chgrp,lpwd,df,symlink,and lmkdir. Termination on error can be suppressed on a command by command basis by prefixing the command with a
-‘ character (for example,-rm /tmp/blah*).
以上是内存溢出为你收集整理的linux – 如何在同一个shell命令中打开sftp连接并执行sftp命令全部内容,希望文章能够帮你解决linux – 如何在同一个shell命令中打开sftp连接并执行sftp命令所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)