echoコマンドから必要な出力を取得できません

echoコマンドから必要な出力を取得できません

以下は私のスクリプトです。

#!/bin/bash
SERVERS="sl20rht00-t"
#SERVERS="shcbrht01-t"
USR="adm-dt-c"
for host in $SERVERS
do
ssh -tt $USR@$host 'sudo cp /etc/sudoers /Backups/sudoers_11thmarch2015; sudo cp /etc/ssh/sshd_config /Backups/sshd_11thmarch2015; sudo cat /home/adm-dt-c/denyuser >>  sudo /etc/ssh/sshd_config; sudo /etc/init.d/sshd restart;'
done
exit 0

/etc/ssh/sshd_config問題は、スクリプトを正常に実行した後でも行を追加できないことです。

ベストアンサー1

sudoリダイレクトでは機能しません。おそらくすでに~$USR/sudoファイルがあるでしょう。リダイレクトしないでくださいsudo tee

これを変更してください:

ssh -tt $USR@$host 'sudo cp /etc/sudoers /Backups/sudoers_11thmarch2015; sudo cp /etc/ssh/sshd_config /Backups/sshd_11thmarch2015; sudo cat /home/adm-dt-c/denyuser >>  sudo /etc/ssh/sshd_config; sudo /etc/init.d/sshd restart;'

次の場合:

ssh -tt $USR@$host 'sudo cp /etc/sudoers /Backups/sudoers_11thmarch2015; sudo cp /etc/ssh/sshd_config /Backups/sshd_11thmarch2015; sudo cat /home/adm-dt-c/denyuser | sudo tee -a /etc/ssh/sshd_config > /dev/null; sudo /etc/init.d/sshd restart;'

おすすめ記事