假設我在/var/www/foo
,我想創建/tmp/foo
。有沒有一種方法可以通過編程實現,並最終得到一個像mkdir /tmp/[insert something here]
這樣的命令?Unix:創建一個與工作目錄同名的目錄
0
A
回答
3
mkdir /tmp/`basename $(pwd)`
(請注意,他們是反引號,不轉發蜱。)
這工作,因爲做反引號命令替換。它基本上在反引號中運行這些東西,並用命令運行標準替換它。在這種情況下,帶有當前工作路徑的basename
命令。而$(…)
與反引號完全相同。
basename
命令「從文件名剝離目錄和後綴」。 (見http://unixhelp.ed.ac.uk/CGI/man-cgi?basename)
你也可以使用(如果你不想有反引號):
mkdir /tmp/$(basename $(pwd))
注意的是,如果路徑到當前目錄中包含空格或其他特殊字符,您需要將命令替換放在雙引號中:
mkdir "/tmp/$(basename "$(pwd)")"
0
$PWD
始終包含當前目錄的完整路徑。因此${PWD##*/}
($PWD
除最後的/
以外的部分)是當前目錄的名稱。
mkdir "/tmp/${PWD##*/}"
你可以離開了雙引號,如果你知道當前目錄的名稱不包含任何空格或任何字符*?\[
的。
在zsh的,有提取路徑的最後一個組件的一個簡單的方法:
mkdir -- /tmp/$PWD:t
相關問題
- 1. 在unix的工作目錄中找到一個特定的目錄
- 2. UNIX:在創建符號鏈接目錄的目錄,而不是
- 3. Unix:遍歷一個目錄
- 4. 創建一個目錄
- 5. 在ruby不工作的目錄內創建目錄
- 6. 創建目錄+子目錄
- 7. 如何在當前工作目錄中創建一個目錄,使用Java
- 8. Unix基於文件名創建目錄並將文件移動到目錄
- 9. 獲得目錄名和UNIX
- 10. unix FTPS cURL目錄創建失敗
- 11. 如何爲每個目錄創建主組目錄名稱?
- 12. 重命名工作目錄
- 13. Tomcat 7無法創建工作目錄
- 14. Cordova文件創建目錄不工作
- 15. 在Unix中的另一個目錄中的某個目錄中創建一個文本文件
- 16. 創建目錄
- 17. 創建目錄
- 18. 創建目錄
- 19. 管理一個字符串以在unix中創建目錄
- 20. 存在子目錄的unix ls目錄
- 21. 確定兩個目錄名是否指向同一目錄
- 22. 工作目錄 - R與RStudio
- 23. Python:對於工作目錄中的每個目錄進入該目錄並獲取目錄的名稱
- 24. 如何從Java的工作目錄返回一個目錄?
- 25. 創建apache的別名目錄,但沒有工作
- 26. Hadoop Distcp將目錄內的目錄複製到同名目錄
- 27. 「的Git目錄」和「工作目錄」
- 28. 構建多個源目錄到相同的目標目錄中
- 29. 的.htaccess - 創建一個語言目錄
- 30. 創建一個好的目錄結構
這工作!謝謝! – Nick