bash PATHはどこに設定しましたか?


9

~/binPATH から削除したい。Linux(Ubuntu)が初めてだった数ヶ月前にセットアップしましたが、どうやって追加したのかわかりません...

下記のすべてのファイルを検索しても何も表示されません。
他にどこに設定することができますか?$HOME/.profilePATHのプレフィックスの後にプリペンドされています$HOME/bin

違いがある場合は、コマンドプロンプトと実行中のスクリプトの両方から同じPATHを取得します。

#!/bin/bash
{
  echo "first dir of PATH is: '${PATH%%:*}'"
  shopt -s nullglob
  cat \
    /etc/profile \
    /etc/bash.bashrc \
    /etc/profile.d/*.sh \
    $HOME/.bashrc \
    $HOME/.bash_aliases \
    /etc/bash_completion \
    $HOME/.bash_completion* \
    $HOME/.profile \
    $HOME/.profile_zap \
    $HOME/.bash_profile* \
    $HOME/.bash_login* \
  | sed -rne '/~\/bin/p'
}

出力は次のとおりです。

first dir of PATH is: '~/bin'

PATH代わりにgreppingを試してください。それでもうまくいかない場合は、すべてのファイルを調べて、調達されているものがないか確認してください。
jw013

〜/ .bashrcと〜/ .profileを確認しましたか?ない場合は、/ etc / profileを確認してください。これらの場所の1つで見つけることができると思います。
nikhil

みんなありがとう...すべての提案は役に立ちました...それは~/.gnomerc...
Peter.O

回答:


10

ログイン時の完全な環境負荷をトレースしたい場合があります。ただのアイデア。

/ etc / profileが最初のソースファイルであるため、最上部に追加できます。

set -x
exec 2> /tmp/debug.log

次に、新しいターミナルを開いbash -l ; その後、元のターミナルに移動して、追加された行を削除します(作業環境が必要ですか?)。

/tmp/debug.logにあるloading_the_bash_environmentのすべてのステップの完全なトレースで終了する必要があります。それはloooongファイルになります。

これで、「〜/ bin」がPATHに入る場所を見つけることができなければなりません

最初に、すべてのソースファイルのgrepを探します。あなたの投稿から、パスの〜/ binがリストしたものとは別のファイルに設定されていることは間違いないでしょう。


@hmontoliu ..これでいくつか問題が発生しました..最初に、ログには何も出力されませんが、ターミナル(konsole)に大量の出力が表示されます...への最初の参照~/binは、すでにそれを示していますパスですが、どこから来たのかはわかりません。この時点では、すでに$HOME/binfromが後に続きます$HOME/.profile(このテストで特別な追加ディレクトリを使用したので、そこからきているはずです)。 ...ハウバー、私はすべてのテキストファイルを検索することで、経験的にそれを見つけることができました。それは~/.gnomerc.. から来ており、変更するために再ログインする必要があります。?? !! ..
Peter.O、2011

/ etc / profileの上に行を貼り付けて、それをプレーンで実行していることを確信していますbash -lか?stderrに移動するデバッグ(-x)を/tmp/debug.logに送信する必要があります。実際、私はこれをテストしたばかりで、期待どおりに動作します
hmontoliu '05 / 08/05

(もう一度)もう一度試してみる...このログ分析は間違いなく(他のすべてが失敗した場合に)進むべき道であり、これは私がそれをよりよく理解する良い機会です...
Peter.O

...今のところ、このログの問題をあまりにもハードなバスケットに入れなければなりません。それでもログファイルに出力されませんでしたが、ターミナルには何百行もありましたが、問題ありません。デバッグログの良い紹介..確かに、構成ファイルの感触はかなり良くなりました...ありがとう...
Peter.O

3
私は2行目でを置き換える必要setがありexecましたが、
それで
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.