Вбудована команда SSH


15

Чи можливо зробити просту команду SSH в стилі inline, наприклад:

ssh foo@bar.com { cd foo/bar && rm *.foobar }

Відповіді:


27

Якщо ви хочете виконати cd foo/bar && rm *.foobarна віддаленій машині, просто зробіть це

ssh foo@bar.com  'cd foo/bar && rm *.foobar'

і дивись man ssh...

ssh [-1246AaCfgkMNnqsTtVvXxY] [-b bind_address] [-c cipher_spec] [-D
[bind_address:]port] [-e escape_char] [-F configfile]
[-i identity_file] [-L   [bind_address:]port:host:hostport]
[-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port] [-R
[bind_address:]port:host:hostport] [-S ctl_path] [-w tunnel:tunnel
[user@]hostname [command]

Частини, які ви хочете:

ssh [user@]hostname [command]

2
Варто відзначити, що ви можете передавати STDIN і STDOUT за допомогою цього методу - просто днями я зробив зображення HD на віддаленій машині, використовуючи DD над ssh.
crazy2be

9

стиль 1: ssh user@host 'embedded command'

стиль 2: ssh user@host " $(cat cmd.txt) "
cmd.txt - це файл, який містить вашу віддалену команду, яка знаходиться в локальній машині


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.