Intereting Posts
Предоставьте пользователям root права на монтирование разделов NTFS vim на FreeBSD не реагирует правильно на клавиши со стрелками и другие видоподобные поведения изменять текстовый файл только с одним номером, подлежащим ограничениям sed string с плохими символами Как разобрать опцию fbmpeg -b: Мой Debian / proc / cmdline сбрасывается каждый раз при перезапуске Понимание основных идентификаторов Как вставить текст после определенной строки в файл? Запустить приложение, основанное на Ubuntu на CentOS после всплеска BIOS, не будет загружаться, попросить выбрать ОС, но не может Строка su и ssh показывает пароль. Является ли это недостатком безопасности или я что-то упускаю? просмотр dll и свойств / атрибутов файла exe через командную строку Уменьшает ли окно использование свободной памяти? systemctl – коды выхода службы и объяснение информации о состоянии Значение `10 # N`

Как удалить файл на удаленном компьютере через SSH с помощью сценария оболочки?

Я пишу сценарий оболочки, где я должен удалить файл на удаленном компьютере с помощью Shell Script.

Поток вручную:

ssh username@domain.com 

.. то в домене:

 cd ./some/where rm some_file.war 

Как выполнить эту задачу?

Вы можете передать команде ssh команду для запуска вместо запуска оболочки, добавив ее в команду ssh.

 ssh username@domain.com 'rm /some/where/some_file.war' 

Вам не нужно cd в местоположение, чтобы удалить что-либо, пока вы укажете полный путь, так что еще один шаг вы можете пропустить.

Следующий вопрос – аутентификация. Если вы просто запустите это, вам будет предложено ввести пароль. Если вы не хотите вводить это в интерактивном режиме, вы должны настроить аутентификацию по публике.

Команда ssh имеет параметр команды (последний параметр в команде), который можно использовать для запуска удаленных команд.

Если вы хотите удалить удаленный файл с помощью sudo, вам нужно выполнить что-то вроде этого:

 ssh -tt user@host 'stty raw -echo; sudo rm /path/to/file' < <(cat) 

Детали .

Установите ключи без пароля, затем добавьте команду как часть команды ssh. См .: http://www.dotkam.com/2009/03/10/run-commands-remotely-via-ssh-with-no-password/