為什么呢?這是因為shell版本問題!
Bourne Shell(即sh)是UNIX最初使用的shell,平且在每種UNIX上都可以使用。BourneShell在shell編程方便相當優秀,但在處理與用戶的交互方便作得不如其他幾種shell。
LinuxOS默認的是Bourne Again Shell,它是Bourne Shell的擴展,簡稱bash,與BourneShell完全兼容,並且在BourneShell的基礎上增加,增強了很多特性。可以提供命令補全,命令編輯和命令歷史等功能。它還包含了很多C Shell和KornShell中的優點,有靈活和強大的編輯接口,同時又很友好的用戶界面
C Shell是一種比Bourne Shell更適合的變種Shell,它的語法與C語言很相似。Linux為喜歡使用CShell的人提供了Tcsh。
Tcsh是CShell的一個擴展版本。Tcsh包括命令行編輯,可編程單詞補全,拼寫校正,歷史命令替換,作業控制和類似C語言的語法,他不僅和BashShell提示符兼容,而且還提供比Bash Shell更多的提示符參數。
Korn Shell集合了C Shell和Bourne Shell的優點並且和BourneShell完全兼容。Linux系統提供了pdksh(ksh的擴展),它支持人物控制,可以在命令行上掛起,后台執行,喚醒或終止程序。
Linux還包括了一些流行的Shell如:ash,zsh等。每個Shell都有它的用途,有些Shell是有專利的,有些能從Internet或其他來源獲得。
因此,現在在來解釋為什么在ubuntu下出現找不到‘setenv’命令的錯誤就很容易了。因為setenv/unsetunv是csh的命令,而ubuntu下的shell版本是bash,因此無法解釋,但是在bash下有與之對應的命令,對應關系如下:
因此,現在在來解釋為什么在ubuntu下出現找不到‘setenv’命令的錯誤就很容易了。因為setenv/unsetunv是csh的命令,而ubuntu下的shell版本是bash,因此無法解釋,但是在bash下有與之對應的命令,對應關系如下:
- 在 csh shell: 輸入
setenv PATH "$PATH:/usr/local/bin/python"
, 按下"Enter"。 - 在 bash shell (Linux): 輸入
export PATH="$PATH:/usr/local/bin/python"
,按下"Enter"。 - 在 sh 或者 ksh shell: 輸入
PATH="$PATH:/usr/local/bin/python"
, 按下"Enter"。