我尝试使用putty.exe通过java代码和windows打开Unix会话,如下所示:
Runtime.getRuntime().exec("cmd /c start /B C:/scripts/Session.bat ");
'Session.bat'文件内容为:
putty.exe -t -ssh root@aaa -pw abcd -P 22
aaa 是服务器名称。 root 是用户名。 abcd 是密码
现在,会话打开很好,但我想从上面的命令(ll -s,pwd等)运行几个简单的命令。 但是当我尝试将包含这些命令的txt文件添加到上面的命令时,我看到命令在输入的用户名之后和密码之前执行。 完整的命令是:
putty.exe -t -ssh root@aaa -pw abcd -P 22 -m C:\scripts\commands.txt
这就是为什么我得到错误(下面),因为命令“ll”出现在密码之前:
Using username "root".
bash: ll:: command not found
请帮帮我... 感谢
答案 0 :(得分:0)
在处理密码之前,命令无法在远程计算机上执行。当然,root用户的bash启动文件中缺少别名。
尝试将alias ll='ls -l'
添加到/root/.bash_profile?