Saya menyalin cuplikan Bash ke latar belakang perintah ssh yang dijalankan dari jarak jauh:
ssh user@remote <<CMD
some process <&- >log 2>error &
CMD
Apa yang <&-harus dilakukan
Dugaan saya adalah bahwa itu sama dengan< /dev/null
Pemahaman saya berikutnya adalah bahwa tiga deskriptor file utama ( stdin, stdout, stderr) perlu ditutup untuk mencegah:
- Pekerjaan yang dilatar belakangi dan skrip yang keluar - entah bagaimana bertentangan?
- Ketika terminal ditutup, semua proses yang menerima stdin dari terminal ditutup?
ssh -nNT user@remote 'command'akan membuat sesi SSH non-interaktif. Tambahkan &ke latar belakang, tambahkan nohupke commandagar tetap berjalan jika koneksi Anda mati.
man sshmenyarankan bahwa -N menonaktifkan menjalankan perintah jarak jauh sepenuhnya, dan tes cepat mendukungnya.