
我有一個非常簡單的問題,但我就是無法理解它。關於以下命令列:
for foo in *.dist; do cp $foo `basename $foo .dist`; done
我知道它會獲取當前目錄中以.dist 作為擴展名的所有文件,複製它們,並在同一步驟中刪除.dist 擴展名(我已從有關在Ubuntu Server 下安裝OTRS 的wiki 帖子中獲取了它) 。我只是想了解它為什麼這樣做。
非常感謝。
答案1
從man basename
NAME 基本名稱 - 從檔案名稱中刪除目錄和後綴
摘要 基本名稱 名稱 [後綴] 基本名稱 選項
說明 列印 NAME,刪除所有前導目錄組件。如果指定,也要刪除尾隨的後綴。
所以,命令 basename 正在執行此操作