'SSH için en Temiz Yol ve Bash Çalıştırmak Birden fazla komut?
Ben zaten ssh ajanı kurdunuz, ve bash harici bir sunucu komut falan yapıyordum komutları çalıştırabilirsiniz:
ssh blah_server "ls; pwd;"
Gerçekten yapmak istediğim şey, şimdi, harici bir sunucuda uzun komutları bir sürü çalıştırın. Bu tırnak işaretleri arasındaki kapsayan çok çirkin olurdu, ve gerçekten oldukça çok kez sshing sadece bunu önlemek için uzak dururdum.
Yapabileceğim bir yol bu bir parantez falan kapalı olur? Hat boyunca bir şey arıyorum:
ssh blah_server (
ls some_folder;
./someaction.sh;
pwd;
)
Temel olarak, herhangi bir çözüm ile mutlu temiz olduğu sürece olacağım. Şimdiden teşekkürler!
Edit
Açıklığa kavuşturmak için, daha büyük bir bash betiği bu kısımdan bahsediyorum. Diğer insanlar onu temiz tutmak isterim, böylece satır aşağı komut ile anlaşma gerekebilir. Benzer bir satır ile bir bash script var istemiyorum:
ssh blah_server "ls some_folder; ./someaction.sh 'some params'; pwd; ./some_other_action 'other params';"
son derece çirkin ve okunması zor olduğu için.
CEVAP
Nasıl bir "burada" . belge
ssh otherhost << EOF
ls some_folder;
./someaction.sh 'some params'
pwd
./some_other_action 'other params'
EOF
Sorunların @yorum Globalz tarafından bahsedilen önlemek için, (uzak sitede ne yaptığınızı bağlı olarak) ile ilk satırı yerini almak mümkün olabilir
ssh otherhost /bin/bash << EOF
Böyle büyük mükafat uyarı: "Birde...
Nasıl birden fazla çalıştırmak için .B...
Daha iyi bir yol bash komut N kere çal...
Nasıl Emacs üzerinde birden fazla kabu...
Tüm Dosya üzerinde Komut Çalıştırmak i...