2013-08-25 82 views
34

發現我使用的Z shell(zsh),而不是默認的bash,和一些錯誤發生,所以說誰用來工作的所有命令都不再承認:命令不是zsh的

ls 
zsh: command not found: ls 

open -e .zshrc 
zsh: correct 'open' to '_open' [nyae]? 

我不噸知道如何重置zsh或如何解決這個問題。這裏是$PATH變量的內容:

echo $PATH 
/Users/Malloc/bin/Sencha/Cmd/3.1.2.342:/usr/local/bin/mate 

我無法打開.bash_profile文件,也不.zshrc文件,似乎是唯一的解決辦法是重置zsh。有任何想法嗎?

編輯:

我甚至嘗試爲this thread表示重置zsh,但總是有command not found錯誤:

exec zsh 
zsh: command not found: zsh 

所以這是怎麼回事?爲什麼所有命令都丟失了?

回答

67

很明顯你已經搞砸了你的PATH變量。 (您當前的PATH不包含其中常見的工具都位於任何位置。)

嘗試:

PATH=/bin:/usr/bin:/usr/local/bin:${PATH} 
export PATH 

另外,對於 「復位」 的zsh,指定外殼的完整路徑:

exec /bin/zsh 

exec /usr/bin/zsh 
2

對我來說只是重新啓動我的終端似乎固定T他的問題。當打開的文件夾

4
  1. 使用一個很好的文本編輯器如Sublime文本並打開您的.zshrc文件(應該在你的主目錄下。如果你沒有看到它,一定要單擊鼠標右鍵,選擇「顯示隱藏文件」選項)。

  2. 找到它規定:出口PATH =「一個-一堆-的路徑分隔逐冒號:」

  3. 在之前在該行的末尾插入這一點,最終報價: $ HOME/.local/bin

它應該適合你。

您可以測試,如果這會先從通過在終端輸入第一本:出口PATH = $ HOME /。當地/斌:如果錯誤消失,您鍵入該進入終端後$ PATH

您終端功能正常,上述解決方案將起作用。如果沒有,則必須找到參考錯誤所在的文件夾(找不到該東西),然後用PATH-TO-THAT-FOLDER替換上面的PATH。

0

重新啓動終端也爲我製造了詭計。

2

我通過打開終端首選項常規選項卡並將命令(完整路徑)更改爲/bin/bash爲默認值,然後編輯~/.zshrc文件修復了此問題。

enter image description here

export PATH="all your path inside the quotes" 

...沒有PATH="和保存文件之間的任何空白。

enter image description here

保存文件後,更改您的命令或選擇默認 enter image description here

/bin/zsh ...並重新啓動終端,你應該有你的zsh外殼再次合作!

0

正如其他人所說的那樣,只要在進行更改後重新啓動終端,應該重置並更改您對〜/ .zshrc文件所做的更改。例如後加入功能打開Visual Studio:

function code { 
    if [[ $# = 0 ]] 
    then 
     open -a "Visual Studio Code" 
    else 
     local argPath="$1" 
     [[ $1 = /* ]] && argPath="$1" || argPath="$PWD/${1#./}" 
     open -a "Visual Studio Code" "$argPath" 
    fi 
} 

我可以使用關鍵字代碼的命令行打開該程序。

3

您可以創建在/ usr/local/bin目錄符號鏈接/

sudo ln -s $HOME/.composer/vendor/bin/homestead /usr/local/bin/homestead 
2

在你的〜/ .zsh配置文件包括到包含別名您的bash路徑文件的路徑。在我的情況下,它包含〜/ .zsh中的「source〜/ .bash_profile」這一行。