Para usar um comando com o echo
operador de redirecionamento "into a file" >>
através sudo
do comando ..., escrevi que redirecionar através da entrada padrão para o sudo
processo, executado como superusuário. O comando para redirecionar era echo "tun" >> /etc/modules-load.d/tun.conf
, aqui eu coloquei whoami
em seu lugar.
tentei
echo 'whoami' | sudo -i '$SHELL -c "exec $(< /dev/stdin)"'
e a seguir,
echo 'whoami' | sudo -i '$SHELL -c "$(< /dev/stdin)"'
e sh
respondeu -sh: /bin/sh -c "$(< /dev/stdin)": not found
.
Para que serve isso? Por que a distribuição Alpine Linux sh
não encontra meus comandos executados por meio de sudo
?
sudo -V
(número da versão e versões compiladas):
Sudo version 1.9.15p5
Sudoers policy plugin version 1.9.15p5
Sudoers file grammar version 50
Sudoers I/O plugin version 1.9.15p5
Sudoers audit plugin version 1.9.15p5
Obrigado por qualquer resposta! 🙂