[아래 답변을 반영하도록 편집됨]
명령줄에서 폴더/디렉터리 블록을 생성하거나 "200000-209999"라는 제목의 최상위 폴더를 생성하는 스크립트를 생성한 다음 해당 폴더 내에서 하위 폴더의 이름을 다음과 같이 지정하는 방법을 찾고 있습니다.
200000-200499
200500-200999
201000-201499
... etc ...
... etc ...
208500-208999
209000-209499
209500-209999
간격 이름은 보시다시피 지정되며, 최상위 수준/하위 폴더의 다음 배치인 "210000-219999", "220000-229999" 등을 설정하고 싶습니다.
[편집하다]
내가 찾고 있는 것을 달성하기 위해 아래 답변을 기반으로 다음 스크립트를 생각해냈습니다. 제가 추가한 내용이 우아한 스크립팅이 아닐 수 있으므로 개선할 수 있으면 알려주시기 바랍니다.
#!/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
답변1
이 seq
유틸리티는 숫자를 생성하는 방법입니다.
for start in $(seq 200000 500 209000); do mkdir "${start}"-"$((start + 499))"; done
구문은 입니다 seq start increment end
.
답변2
간단한 쉘 방법은 다음과 같습니다:
$ i=200000; while [ "$i" -ne 210000 ];do echo ${i}-$((i+499)); i=$((i+500)); done
실제 폴더를 만들려면 다음 echo
으로 바꾸세요 . mkdir
이 루프는 폴더를 배치하려는 디렉터리에서 실행되어야 하므로 cd
먼저 해당 디렉터리에 있는지 확인하세요.