我正在尝试通过plink.exe
运行多个命令行。批处理完成后。我想退出并执行新命令行
我的execute.bat
文件中的脚本
(
echo cd /appl/
echo sudo -s
echo cd apache-tomcat/webapps/Test
echo sh ./J50X100.sh
) | plink.exe -batch host -l user -pw pass
实际:它仍然处于远程状态,我无法执行新的命令行
预期:退出此窗口并能够执行新的命令行
答案 0 :(得分:0)
使用Plink的方式将打开一个交互式Shell会话。与每个交互式Shell会话一样,必须使用exit
命令退出它。对于您而言,实际上有两个exit
命令,首先退出sudo
,然后退出登录shell。
尽管最好通过在Plink命令行上指定以下命令来避免完全使用交互式shell:
plink.exe -batch host -l user -pw pass "cd /appl/ ; sudo -s 'cd apache-tomcat/webapps/Test ; sh ./J50X100.sh '"
尽管这种方法在您的特定情况下可能会出现问题,因为您必须配置sudo
才能允许此命令-但您应该这样做,因为这是正确的方法。