Command-Line
創建大量範圍或文件夾/目錄塊?
$$ EDITED to reflect answers below $$ 我正在尋找一種從命令行或腳本創建文件夾/目錄塊的方法,該腳本將生成名為“200000-209999”的頂級文件夾,然後在該文件夾內,子文件夾因此命名:
200000-200499 200500-200999 201000-201499 ... etc ... ... etc ... 208500-208999 209000-209499 209500-209999
如您所見,命名是間隔的,然後我想設置下一批頂級/子文件夾,“210000-219999”、“220000-229999”等。
$$ EDIT $$ 我根據以下答案提出了以下腳本,以完成我正在尋找的內容。我的補充可能不是優雅的腳本,所以如果可以改進,請告訴我。
#!/bin/bash # # mkfolders.sh # # Ask user for starting range of job #'s and create the subsequent # folder hiearchy to contain them all. # ### clear read -p 'Starting Job# in range: ' jobnum mkdir "${jobnum}"-"$((jobnum + 9999))" for start in $(seq $jobnum 500 $((jobnum+9999))); do mkdir "${jobnum}"-"$((jobnum + 9999))"/"${start}"-"$((start + 499))"; done echo echo Done! echo
該
seq
實用程序是生成數字的一種方法:for start in $(seq 200000 500 209000); do mkdir "${start}"-"$((start + 499))"; done
語法是
seq start increment end
.
簡單的外殼方法是這樣的:
$ i=200000; while [ "$i" -ne 210000 ];do echo ${i}-$((i+499)); i=$((i+500)); done
替換
echo
為mkdir
以創建實際文件夾。此循環應在您打算放置文件夾的目錄中執行,因此請先確保您cd
在那裡。