Bash
用於創建文件夾並將特定文件移動到其中的 Bash 命令
我正在嘗試使用 bash 來實現這一點
我有一個文件目錄,獲取圖片的範例如下:
January 2010 MA - C3 Edexcel.pdf January 2010 MS - C3 Edexcel.pdf January 2010 QP - C3 Edexcel.pdf January 2011 MA - C3 Edexcel.pdf January 2011 MS - C3 Edexcel.pdf January 2011 QP - C3 Edexcel.pdf
我正在尋找一個命令,它將每年的三個文件放入該年的文件夾中,例如,前三個文件應放入名為 2010 的文件夾中,第二組三個文件應放入名為 2011 的文件夾。
所以我想做的是
mkdir 2010| mv *2010* 2010
對於文件中的每一年
需要明確的是,該文件夾比我展示的要大得多,這意味著逐年這樣做會花費太多時間
這可能嗎?
這個腳本片段將滿足您幾年的要求:
for i in $(seq 2010 2020); do mkdir -p "$i" && mv *"$i"*.pdf "$i" done
一個簡單的方法來理解它
mkdir 2010 && mv *2010*pdf !$
& 2011 年同樣的事情……
這裡是循環多年文件的解決方案
for i in $(seq 0 9) ; do mkdir 201${i} && mv *201${i}*pdf !$ ; done