0

我尝试使用 putty.exe 通过 java 代码和窗口打开 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

请帮助我...谢谢

4

1 回答 1

0

在处理密码之前,该命令无法在远程计算机上执行。root 的 bash 启动文件中肯定缺少别名。

尝试添加alias ll='ls -l'到 /root/.bash_profile ?

于 2013-10-15T14:44:39.303 回答