Você precisa de permissões de superusuário para editar o arquivo.
Para se tornar o superusuário, digite sudo -s
e digite sua senha. Depois de fazer o login, tente seu comando e ele funcionará.
Tentando modificar /etc/bash.bashrc
, recebo um erro:
$ echo "my edit" >> /etc/bash.bashrc
bash: /etc/bash.bashrc: Permission denied
ls -ll /etc/bash.bashrc
mostra:
-rw-r--r-- 1 root root 1975 2011-05-18 19:54 /etc/bash.bashrc
Como eu poderia modificar /etc/bash.bashrc
?
Você precisa de permissões de superusuário para editar o arquivo.
Para se tornar o superusuário, digite sudo -s
e digite sua senha. Depois de fazer o login, tente seu comando e ele funcionará.
sudo bash -c "echo 'text' >> /etc/bashrc"
Não altere o proprietário. Não chmod isso. Apenas use sudo. Abra-o com sudoedit se precisar fazer coisas complicadas.
A propósito, você pode fazer alterações para um usuário apenas editando ~ / .bashrc sem precisar de nenhuma permissão especial.
Você provavelmente já descobriu que existem muitas maneiras de fazer isso. Mas acho que esse é o mais elegante de todos. (Geralmente envolve menos digitação também, quando tudo é dito e feito.)
echo "my edit" | sudo tee -a /etc/bash.bashrc
Veja man tee
se estiver interessado nos detalhes técnicos de como isso funciona.
Em geral:
Para fazer o trabalho de echo some-text > some-file
as root
, execute:
echo some-text | sudo tee some-file
Para fazer o trabalho de echo some-text >> some-file
as root
, execute:
echo some-text | sudo tee -a some-file
sudo nano /etc/bash.bashrc
Faça as alterações desejadas. Salve ( Ctrl + X ) e confirme com y
e Enter .
sudo -s
Agora você é um superadministrador, execute seu comando.
sudo echo "my edit" >> /etc/bash.bashrc
Tags command-line bash bashrc