私の〜/ .bash_profileを編集して私のPATHを壊しました。Bashはほとんどのコマンドを認識しません。


10

誤ってパスを次のように設定しました。

PATH="~/Tools/apache-maven-3.3.3/bin"

これでデフォルトのパスはなくなりました。Terminalでは何も動作しません。

Korays-MacBook-Pro:~ koraytugay$ ls
-bash: ls: command not found
Korays-MacBook-Pro:~ koraytugay$ mkdir test
-bash: mkdir: command not found

隠しファイルがFinderに表示されないため、Finderから.bash_profileを変更することもできません。

どうすればこの状況を解決できますか?


1
これはBSD風のシステムでは動作しないかもしれません:デフォルトパスを元に戻してみてくださいPATH=$(getconf PATH)。そうでなければPATH=/bin:/usr/bin
glenn jackman

1
「getconf PATH」の提案は、少なくとも10.10では、実際にうまく機能します。
calum_b

3
PATHが壊れているので、グレンの提案はPATH=$(/usr/bin/getconf PATH)
fd0

回答:


22

最も簡単な方法は、Time Machineなどのバックアップから復元することです。
ただし、最後のバックアップが非常に長い時間前に行われている場合は、他にも変更を加える必要があるため、.bash_profileを編集できます。

ターミナル内

端末では〜/ .bash_profileを編集するためにエディタへのフルパス(/ usr / bin / emacs / usr / bin / viまたは/ usr / bin / nano)を使うことができます。

例えば

/usr/bin/nano ~/.bash_profile

あるいは、デフォルトのテキストエディタ(デフォルトではTextEdit)で次のようにして開くことができます。

/usr/bin/open ~/.bash_profile

GUIで - DockまたはFinderから

しかし、File-> OpenでTextEdit(あるいは他のGUIエディタ)からこれを実行してあなたのホームディレクトリに行くこともできます。あなたは隠されたものを表示するすべてのファイルを表示したりしないようにファインダー(デフォルト)に設定している場合によっては、リスト内の.bash_profile表示されますいずれか、またはあなたがヒットすることができます⌘ CMD+ ⇧ SHIFT+ .オープン/保存ダイアログで隠しファイルを明らかにしました。(近道はこの答えからです)


5
説明した問題を自分で解決できないユーザーは、おそらく編集のnano代わりにemacs/の代わりに使用する方が良いでしょう。vi~/.bash_profile
nohillside

11

最小限のパスを戻す

次のコマンドを入力して最小PATHをリセットします。

PATH=/bin:/usr/bin

修正する ~/.bash_profile

あなたを編集~/.bash_profileご兼ね備えテキストエディタを使用してviemacs またはTextEdit。常に相対的なPATH構文を好みます。

PATH=${PATH}:...my_personal_added_pathes...
export PATH

試して

あまりにも多くの初心者があなたのセッションを再開することによってやり直す前に、彼らはもうシェルを始められないことを発見するために。あなたのテスト~/.bash_profile:別のTerminalウィンドウを開き、それがうまくいっていることを確認してください。

. ~/.bash_profile
ls
uptime
date
...

1
exportあなたの最小限にする必要はありませんPATH。現在のシェルによって開始されたどのプロセスも最小値を継承しPATHます。しかし、私はexport PATHシェルの設定ファイルで使用します。
fd0

1
右!私はテストでシェルスクリプトがある環境でこのようにそれをタイプするのにとても慣れています。
ダン

1

私はこの過ちに出くわしました。そして、それは私が克服するのに全体の午後をとります。ls、git、mkdirなどのbashコマンドが無効になり、「 - bash:xx:ファイルまたはディレクトリが見つかりません」というエラーが表示されました。zshのインストール時に.bash_profileを変更したためです。以下のコマンドを入力して〜/ .bash_profileを復元してください。

  1. Macの端末では、次のように入力します。

    export PATH=/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
  2. bashコマンドを一時的に使うことができます。

    vim ~/.bash_profile
  3. 変更してPATHパラメータを復元する

    export PATH=/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
  4. Vimを保存して終了し、次のように入力します。

    source ~/.bash_profile

さて、私のコンピュータはまた動きます!


ステップ3で注意が必要なのは、ファイル内の他のコンテンツを破壊しないことです。
nohillside

.bash_profileは私の誤った命令によって破壊されました、空の "export PATH ="以外に何も残っていないので、これが私が私のMacを再バックアップしなければならなかった唯一の方法です
Yongsheng Yu

-2
  1. / usr / bin / vim〜/ .bash_profileを実行してbash_profileを開きます。(パスが正しくないため、vim〜/ .bash_profileは機能しなくなります)。
  2. あなたが今追加した、すべてをめちゃくちゃにしたパスを取り除きます。
  3. source〜/ .bash_profileが自動的に実行されるように端末を終了して再起動します。(パスが正しくないため、このままでは機能しません)。

-5

あなたの.bash_profileを開き、あなたのエラーコマンドでその行に行き、その行の最初の文字としてその前に#を付けてください。(必ず)再起動してください。


彼はどのようにして.bash_profileを開きますか?
マーク
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.