Saya sering masuk ke server, lalu masuk ke direktori tertentu. Apakah mungkin untuk menyederhanakan dua perintah ini menjadi satu?
ssh bob@foo
cd /home/guest
Saya ingin menghindari mengubah apa pun di 'foo' jika memungkinkan, karena saya harus menghapusnya dengan administrator server. Saya menggunakan bash, tetapi saya terbuka untuk jawaban di shell lain.
&> /dev/null
. Ini mencegah pesan kesalahan apa pun yang dapat ditampilkan kalau-kalau cd gagal mengubah direktori ke / home / direktori. Jika Anda ingin melihat pesan-pesan itu, Anda bisa mengecualikannya.>&
dan&>
sama di Bash. Gaya yang terakhir lebih disukai.Ini bekerja dengan OpenSSH:
Argumen terakhir berjalan di shell login Anda. The
-t
bendera diteruskan kessh
pasukanssh
untuk mengalokasikan pseudo-terminal, yang diperlukan untuk shell interaktif. The-l
bendera diteruskan kebash
mulai menampar sebagai shell login .sumber
... && exec bash -l
Anda juga dapat melakukannya dengan cara ini, mirip dengan solusi @ EvanTeitelman:
Atau jika Anda tidak tahu cangkang di ujung yang lain:
Atau seperti ini:
sumber