Path
什麼可能導致 which 在路徑中不顯示某些內容?
我的路徑中有一個執行檔,我相信它是一個 perl 腳本。
>$scriptname $outputofscript
但
>which $scriptname which: 0652-141 There is no $scriptname in $path
並且它列印的路徑與
echo $PATH
給出的路徑相同(除了空格分隔而不是冒號)。再次執行 ksh 似乎並沒有改變我的路徑,但現在找不到腳本。
這是在 AIX 6.1 上通過 telnet 執行 ksh 的普通使用者(是的,我知道)。
跑步
type $scriptname
告訴我這是一個別名。顯然,這阻止了它被哪個找到。
which
是 AIX 上的 csh 腳本,它可能使用不同的路徑。但這似乎並不完全是您的問題,因為which
列印了預期的路徑。
ksh
你確定你在第一次會話中沒有不同的路徑嗎?再次執行 ksh 可能會改變 ,PATH
因為它執行了~/.kshrc
或$ENV
。(並且可以肯定的是,腳本是否仍然存在,或者它是否可以在此期間被刪除?)