如何编写ssh命令脚本,然后在会话后台执行?
我试图创建一个脚本来启动ssh会话,并在远程机器上执行命令,然后启动会话。到目前为止,我一直在使用-f或-f-N选项,但我不知道如何将会话恢复到前台,以验证我的命令是否正确执行 或者有没有一种方法可以让单个脚本启动ssh会话并继续向新打开的会话输入命令?然后是那个会议? 如果没有这些工作,我想另一种方法是启动ssh会话的脚本,通过另一个脚本上传并执行命令如何编写ssh命令脚本,然后在会话后台执行?,ssh,Ssh,我试图创建一个脚本来启动ssh会话,并在远程机器上执行命令,然后启动会话。到目前为止,我一直在使用-f或-f-N选项,但我不知道如何将会话恢复到前台,以验证我的命令是否正确执行 或者有没有一种方法可以让单个脚本启动ssh会话并继续向新打开的会话输入命令?然后是那个会议? 如果没有这些工作,我想另一种方法是启动ssh会话的脚本,通过另一个脚本上传并执行命令 关于如何做到这一点,你有什么想法吗?不清楚你想做什么。我会尽力帮忙的 可以在单个ssh会话中使用带引号的字符串(命令之间用分号分隔)顺序发出一
关于如何做到这一点,你有什么想法吗?不清楚你想做什么。我会尽力帮忙的 可以在单个ssh会话中使用带引号的字符串(命令之间用分号分隔)顺序发出一系列命令
$ ssh user@remotehost 'ls; echo foo > bar; cat bar; rm bar'
它将返回上次运行命令的结果
我不明白你为什么要给会议做背景介绍
如果需要,可以使用nohup在远程计算机上启动长时间运行的进程,然后关闭会话
如果您只需要运行一系列命令,每个命令都取决于最后一个命令的结果,那么您不需要对流程进行后台处理,只需将该逻辑放入您的命令序列中即可
$ ssh user@remotehost 'if ![ -f bar ];then echo foo > bar && cat bar && rm bar; fi'
如果有很多事情要做,那么在多个顺序ssh和scp连接中没有什么害处 关于您正试图完成的任务的详细信息可能会有所帮助。我对ssh会话进行后台处理的想法是,在执行远程命令后,会话将保持打开状态,脚本可以返回到本地执行命令。我建议您先让它按顺序工作,然后尝试后台处理。但我的经验是,增加并行性往往比它的价值更麻烦。如果您有背景,则需要使用不同的方法来验证结果,例如