Não obtendo a saída desejada para o comando echo [duplicate]

1

Abaixo está o meu script.

#!/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

O problema é que não consigo anexar a linha em /etc/ssh/sshd_config mesmo após a execução bem-sucedida do script.

    
por Divya 12.03.2015 / 13:43

1 resposta

0

sudo não funciona para redirecionamento. Você provavelmente agora tem um arquivo ~$USR/sudo . Em vez de redirecionar, canalize para sudo tee .

Altere isto:

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;'

Para algo assim:

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;'
    
por 12.03.2015 / 14:35