/etc/bash.bashrc
を変更しようとすると、エラーが発生します。
$ echo "my edit" >> /etc/bash.bashrc
bash: /etc/bash.bashrc: Permission denied
ls -ll /etc/bash.bashrc
の表示:
-rw-r--r-- 1 root root 1975 2011-05-18 19:54 /etc/bash.bashrc
/etc/bash.bashrc
を変更するにはどうすればよいですか?
ファイルを編集するには、スーパーユーザーの権限が必要です。
スーパーユーザーになるには、Sudo -s
と入力し、パスワードを入力します。ログインした後、コマンドを試してみてください。
Sudo bash -c "echo 'text' >> /etc/bashrc"
所有者を変更しないでください。 chmodしないでください。 Sudoを使用するだけです。複雑なことをする必要がある場合は、sudoeditで開きます。
ところで、特別な権限を必要とせずに〜/ .bashrcを編集するだけで、1人のユーザーに変更を加えることができます。
あなたはおそらくこれを行うための多くの方法があることを今までに発見したでしょう。しかし、私はこれがすべての中で最もエレガントだと思います。 (多くの場合、すべてのことを言って完了したときに、最小限のタイピングも含まれます。)
echo "my edit" | Sudo tee -a /etc/bash.bashrc
この仕組みの技術的な詳細に興味がある場合は、 man tee
を参照してください。
一般に:
echo some-text > some-file
をroot
として処理するには、次を実行します。
echo some-text | Sudo tee some-file
echo some-text >> some-file
をroot
として処理するには、次を実行します。
echo some-text | Sudo tee -a some-file
Sudo nano /etc/bash.bashrc
必要な変更を行います。それを保存 (Ctrl+X)そしてy
で確認し、 Enter。