Pada dasarnya saya memiliki sesi layar jauh, yang ingin saya pasang kembali secara otomatis .. Saat ini saya melakukan ini dengan dengan perintah berikut (sebagai bookmark iTerm, atau alias)
ssh host -t screen -x thesessionname
Ini berfungsi dengan baik, tetapi jika sesi itu mati karena alasan apa pun, saya ingin itu dibuat kembali ketika saya terhubung berikutnya. The -R
bendera untuk screen
adalah hampir sempurna:
ssh host -t screen -R -S thesessionname
..tapi jika sesi sudah terlampir, sesi kedua akan dibuat (seperti -R
terlihat sederhana untuk sesi terpisah pertama, jika tidak ada yang ditemukan itu membuat yang baru)
Apakah ada cara untuk membuat -R
bendera mencari sesi terlampir juga, dan hanya membuat yang baru jika thesessionname
tidak ada?
Jika ini tidak mudah dilakukan, bagaimana saya bisa secara otomatis membuat ulang sesi layar ketika mati? Mungkin skrip dijalankan melalui cron yang mencari sesi bernama, membuatnya jika itu tidak ada?
sumber
screen -x -R -S main
itulah yang akhirnya saya gunakan (bekerja sama tanpa paksa-lepas), terima kasih!sceen -r <yoursession>
, akan memberikan kesalahan ketika sudah terlampir (bukannya membuat sesi baru).Beberapa pilihan bagus. Pertama, favorit saya:
Itu akan dilampirkan ke sesi layar pertama yang tersedia (berbagi jika koneksi lain terhubung), dan jika tidak ada sesi layar sama sekali, mulailah yang baru.
Documents untuk itu mengatakan "Pasang kembali sesi dan jika perlu lepaskan atau buat. Gunakan sesi pertama jika lebih dari satu sesi tersedia." Pada dasarnya, double-R membuatnya mencari sesi pertama untuk dilampirkan.
"Lampirkan di sini dan sekarang. Apa pun artinya itu, lakukan saja." Akan melepaskan dan keluar dari sesi terlampir lainnya dan melampirkan sesi pertama yang bisa dilakukan. Pada dasarnya, lakukan apa pun yang perlu dilakukan untuk melampirkan ke sesi yang ada, dan membuat yang baru jika tidak ada di sana.
Yang pertama (-x -R) adalah yang paling kecil kemungkinannya menyebabkan masalah (tidak akan melepaskan koneksi Anda yang lain) tetapi hanya selalu menempel pada sesuatu jika ada sesuatu untuk dilampirkan dan menciptakan sesuatu jika tidak ada yang dilampirkan.
sumber
saya menggunakan
Saya tidak ingin seluruh login saya di shell lain dibatalkan, seperti
-D
halnya, dan saya jelas tidak ingin mode multi-attach-x
.sumber