У меня есть script, где мне нужно запустить команду, а затем передать некоторые дополнительные команды в качестве команд этой команды. Я попробовал
su
echo I should be root now:
who am I
exit
echo done.
... но это не сработает: su
преуспевает, но тогда командная строка просто смотрит на меня. Если я введу exit
в приглашении, начните выполнение echo
и who 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
Как это решить?
Я ищу ответы, которые решают это в общем виде и которые конкретно не относятся к
su
илиssh
. Цель этого вопроса - canonical для этого конкретного шаблона.