我正在使用macOS Sierra。目錄中包含的Mv文件到目錄/新路徑
我有1000多個包含大量文件的目錄。 Word,Excel和壓縮文件。只有一個子級別。重要提示:文件名和文件夾名稱中有空格。
我們決定改變文件的樹狀結構;在與另一個目錄樹合併之前,需要將每個目錄中的所有文件移動到名爲「Word & Excel」的子目錄中。
我設法創建Word的Excel &目錄用這個命令:
for dir in */; do mkdir -- "$dir/Word & Excel"; done
基本上,我只想做
for dir in */; do mv $dir/* "./Word & Excel"; done
這是行不通的。我甚至不明白,如果問題是與$迪爾 - 我需要雙引號,以避免空間問題,但星號是不會工作,如果我使用雙引號......或用星號。
我試圖根據網站上發現了類似的問題前面的回答,清理結果的子文件夾(並試圖基本上避免我的通配符的問題),以獲得更清潔的版本:
for dir in */; do mv `ls -A "$dir" | grep -v "Word & Excel"` ./"Word & Excel" | cd ../ ; done
我我完全卡住了。
任何想法如何處理?
非常感謝。像魅力一樣工作。順便說一句,我不幸是老闆。我在7年前開始業務時沒有注意到這個問題......我不會兩次犯同樣的錯誤。祝你有個美好的一天 – dacasine
@dacasine好的,很好,因爲你是老闆,我可以建議你選擇'WordAndExcel'而不是'Word&Excel'嗎?沒有空格,沒有'&'(在CLI中有特殊含義的另一個特殊字符)。我發誓,你會在某天或那天感謝這一決定。 –
你說得對。我會肯定地改變它。我們認爲它是用戶友好的,但我們忘記了,有時候,CLI是處理大量文件列表的最好的朋友。 – dacasine