我在PATH中有/ usr/bin,稍後在PATH中有dot(表示當前目錄)。我在兩個目錄中有一個程序'abcxyz',/ var和/ someother。如果我在/ var的配對終端中,鍵入了一個荒謬的名字dgxuznk,那麼bash會說:「bash:dgxuznk:command not found」,就像你期望的那樣。如果我現在在/ usr/bin中創建一個名爲dgxuznk的鏈接,指向/中的程序,它也運行該程序,同樣如您所期望的那樣。但是,如果我現在刪除該鏈接,它不再說「找不到命令」,而是「bash:/ usr/bin/dgxuznk:沒有這樣的文件或目錄」。就好像它記住了它以前找到它的位置,並且期望再次在/ usr/bin下找到它。更糟糕的是,如果我現在將程序在/ var(我在哪裏)重命名爲dgxuznk,並鍵入「dgxuznk」,它仍然抱怨「bash:/ usr/bin/dgxuznk:沒有這樣的文件或目錄」如果無法通過PATH中的/ usr/bin查看該點並查看當前目錄中的程序。如何停止Linux中止PATH搜索?
這是隻在Fedora 19?我怎樣編程才能通過搜索路徑中的/ usr/bin並找到當前目錄點?
(提示:如果您想重現此錯誤 - 不讓它找到當前目錄下的程序,直到後它發現它在/ usr/bin中)
不要把'.'放在'$ PATH'中。這是一個等待發生的安全問題。 –