2

В рамках моего обычного рабочего процесса я подключаюсь к компьютеру другого пользователя, переключаю на него пользователя, запускаю команду и снова выхожу на свой компьютер:

ssh hostname
sudo su user
runcommand
exit
exit

Есть ли способ сократить это до однострочной команды? например

ssh --someflags "runcommand"

Я пробовал это, но меня попросили ввести пароль другого пользователя, которого у меня нет:

sudo ssh user@hostnme "runcommand"

2 ответа2

5

У вас есть пользователь на всех удаленных компьютерах? Я думаю, это должно сработать, но я не уверен, что правильно понимаю ваши настройки.

ssh youruser @ hostname "sudo -u удаленная команда запуска"

1

Часто бывает так, что требуется терминал. В этом случае должно работать следующее:

commands='cd myfolder;ls -l'

ssh -ttt "youruser@remotehost" "sudo -u remoteuser sh -c ${commands}"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .