相关疑难解决方法(0)

将命令作为输入传递给另一个命令(su,ssh,sh等)

我有一个脚本,我需要启动一个命令,然后将一些额外的命令作为命令传递给该命令.我试过了

su
echo I should be root now:
who am I
exit
echo done.
Run Code Online (Sandbox Code Playgroud)

...但它不起作用:su成功,但命令提示符只是盯着我.如果键入exit的提示,echowho am i等开始执行!而且echo done.根本没有执行.

同样,我需要这个工作ssh:

ssh remotehost
# this should run under my account on remotehost
su
## this should run as root on remotehost
whoami
exit
## back
exit
# back
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

我正在寻找能够以一般方式解决这个问题的答案,这些答案并非特定于sussh特别是.目的是使这个问题成为这种特定模式的规范.

unix ssh bash shell sh

19
推荐指数
3
解决办法
6119
查看次数

标签 统计

bash ×1

sh ×1

shell ×1

ssh ×1

unix ×1