web-dev-qa-db-ja.com

ターミナルを開くたびに「bash:/ bin:Is a directory」が発生する原因は何ですか?

これは、Ubuntu 12.04で端末を開いたときの初期画面です(Ctrl+Alt+T):

screenshot of terminal

つまり、端末上のテキストは次のとおりです。

bash: /bin: Is a directory
chase@chase-desktop:~$ gedit ~/.bashrc
chase@chase-desktop:~$ source ~/.bashrc
bash: /bin: Is a directory
chase@chase-desktop:~$

なぜこのように表示されるのですか?

それ以前は、端末で作業して.bashrcを何度も編集しましたが、それらのメッセージは受け取りませんでした。

4
PonAlagu

どうやら.bashrcに対する変更の1つが、/binをディレクトリ以外のもののように扱うエラーを導入しました(たとえば、実行可能ファイルとして実行したり、データを読み書きしたりすることでファイルなど)。インタラクティブシェルの起動時に.bashrcが実行されるため、エラーメッセージは常に表示されます。

.bashrcへの変更を調べることで、自分でエラーを特定できる場合があります。

(それ以外の場合、特定の問題を特定するには、.bashrcファイルの内容を確認する必要があります。その全体の内容をクリップボードを質問に貼り付け、質問で選択し、コードとしてフォーマットします Ctrl+K。このファイルを通常よりもずっとmuch長くした場合、質問全体を説明するには長すぎます。その場合、 http://paste.ubuntu.com に投稿し、質問を編集して投稿へのリンクを含めることができます。

可能性の1つは、/binで始まるパスにスペースを挿入した可能性があることです。たとえば、デフォルトの.bashrcファイルの先頭近くにあるコードは次のとおりです。

# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(Shell=/bin/sh lesspipe)"

/binShell=/bin/sh)の後に誤ってスペースを入れた場合、このようなエラーが発生する可能性があります。

それはほんの一例であり、必ずしも最もありそうなものではありません。

4
Eliah Kagan