我的系統上有多個 Java 安裝,其中一些是由 IDE 靜默安裝的,我想找出它們在哪裡。所以我想用locate
去找他們。我的第一次嘗試
locate java
發現了數千次點擊.*java.*
。
有沒有辦法限制定位僅查找具有確切名稱的檔案?不是包含 Java 的路徑。不是名稱中包含 Java 的檔案。
PS:我以前也遇到過類似的問題,所以請忽略Java部分並將其視為查找文件的問題。這也可能是一個查找 的所有出現的問題gcc
。
答案1
從man locate
:
NAME
若要搜尋名稱準確(不是)的文件*NAME*
,
請使用locate -b '\NAME'
locate -b '\java'
-b
- 僅將基本名稱與指定模式進行比對。
答案2
對於大多數locate
實作:
locate '*/java'
應該管用。
當參數不包含通配符時,參數將作為字串在檔案路徑中搜尋。
當它包含通配符時,通配符必須與完整路徑相符。所以在這裡,任何以 . 結尾的路徑/java
。
答案3
find
可能是更好的定位方式爪哇命名文件。
find . -type f -name *java*
如果您想仍然使用locate,您可以使用locate -b
或您可以使用
locate java | grep java$