Answers:
您可以通过将ssh
附加到ssh命令的命令传递给客户端,以代替启动外壳程序执行命令。
ssh username@domain.com 'rm /some/where/some_file.war'
你不用 cd
只要指定完整路径,到某个位置删除某些东西,因此可以跳过另一步。
下一个问题是身份验证。如果仅运行该命令,则将提示您输入密码。如果您不想以交互方式输入此密码,则应设置公共密钥身份验证。
-f
到rm
执行远程调用?
rm
除非用户知道期望什么以及为什么它们覆盖某些内容,否则肯定将它们引发的任何警告或错误传递给调用方。仅使用给定Senario中所需的选项,就可以避免以后出现许多错误和令人沮丧的调试。
-f
选项to rm
的缩写,--force
对不存在的文件或伪参数是否抛出错误产生影响。通常,在非交互式shell上运行的命令默认情况下无论如何都是较少交互的,但是如果不是这样,或者您收到交互式提示,则要做的是修复与之直接相关的设置。如果您正在编写脚本,则无论如何都不会出现该问题,并且如果您位于交互式外壳中(您可能会遇到灾难性的错别字),则应继续使用-I
它--interactive=never
来设置所需的行为。
设置无密码密钥,然后将该命令添加为ssh命令的一部分。请参阅:http://www.dotkam.com/2009/03/10/run-commands-remotely-via-ssh-with-no-password/