Bagaimana menjalankan skrip shell lokal di server jauh melalui SSH?


Jawaban:


16
ssh user@remotehost "bash -s" < local_script.sh

-s membuat bash dibaca dari input standar.

Jika Anda perlu menyampaikan argumen ke skrip Anda:

ssh user@remotehost "bash -s" -- < local_script.sh "your_arg" "--aswitch" "avalue"

Perhatikan tanda hubung ganda --(menandakan akhir dari opsi perintah) dan tanda kutip di sekitar argumen.


Saya harus ingat itu. Harap beri tahu kami jika itu berhasil untuk Anda, dan jangan lupa untuk menandai jawaban yang diterima jika memang berhasil.
Argusvision

3
Anda tidak perlu -s, dan Anda hanya perlu bashjika Anda benar-benar ingin menggunakan paksa bash. Biasanya Anda cukupssh user@remotehost < local_script.sh
janos

1
bagaimana jika skrip lokal memiliki operan?
kmassada

Saya punya skrip yang membutuhkan argumen, misalnya "sh setup.sh arg1 arg2 arg3" bagaimana cara menjalankannya
Amarjit Singh

4

jawaban phoibos bekerja untuk saya.

ssh user@remotehost "bash -s" < local_script.sh

Tetapi Anda harus yakin bahwa skrip Anda secara eksplisit memanggil keluar atau Anda akan tetap masuk ke server jarak jauh setelah eksekusi skrip.

Singkatnya, jangan lupa letakkan ini di akhir local_script.sh:

exit 0
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.