我在shell上執行一些命令時遇到了一些麻煩。
我的問題是,我想更改目錄更具體到我不知道但包含名爲xxx文件的目錄。 如何直接更改爲包含該文件的目錄? 如果我知道包含該文件的目錄名稱會更容易,因爲我只需要使用cd〜/目錄名稱。 任何人都可以幫助我嗎? 感謝更改目錄
Q
更改目錄
0
A
回答
1
如果你不知道一個文件,轉到系統的根目錄,找到它:
cd/
find . -iname filename
1
在多種Linux系統,你可以這樣做:
$ cd `find . -name "filename" | xargs dirname`
但將「文件名」更改爲您要查找的文件。
0
BASH
cd `find . -name "*filename*" | head -1`
這是一種以Qiau回答一個變化。找到包含字符串的第一個文件,然後將當前目錄更改爲其位置。
*是一個外卡,有可能是一些和/或之後文件名之前。
2
如果你有GNU find
:
cd "$(find /startdir -name 'filename' -printf %h -quit)"
你可以使用任何有效的目錄替換 「/ STARTDIR」,例如/
,.
或`〜/。
如果你想cd
到一個目錄這是包含可執行文件$PATH
:
cd "$(dirname "$(type -P "filename")")" # Bash
或
cd "$(f=$(type -P "ksh"); echo "${f%/*}")" # Bash
或
cd "$(dirname "$(which "filename")")"
相關問題
- 1. 更改目錄
- 2. 更改目錄
- 3. htaccess更改目錄
- 4. GetOpenFileName更改目錄
- 5. 更改監視目錄和子目錄
- 6. 批量更改目錄到新目錄
- 7. 更改緩存目錄WebStorm
- 8. 更改UFT工作目錄
- 9. 更改PHP備份目錄
- 10. Python更改用戶目錄
- 11. 更改Pecl安裝目錄
- 12. 更改父shell的目錄
- 13. 更改Drupal模塊目錄
- 14. HTACCESS - 更改目錄結構
- 15. 更改R中的目錄
- 16. 更改目錄:在cmd/1
- 17. Apache2更改「根目錄」
- 18. Unix腳本更改目錄
- 19. Rails - 更改圖像目錄?
- 20. 更改保存目錄
- 21. 在Python中更改目錄
- 22. Laravel目錄更改問題
- 23. 更改工作目錄
- 24. 更改南遷移目錄
- 25. 更改當前目錄
- 26. 更改PHP臨時目錄
- 27. 更改監視器目錄
- 28. AIX監視目錄更改
- 29. Android - 更改目錄權限
- 30. 更改JFileChooser的目錄
什麼操作系統?什麼編程語言?你根本沒有給我們任何背景。 – 2011-03-12 00:16:33