값 기반 이름을 사용하여 프로그래밍 방식으로 폴더 생성

값 기반 이름을 사용하여 프로그래밍 방식으로 폴더 생성

파일에서 a0_value값을 읽는 폴더를 10,000개 만들어야 합니다 ..txt

파일 .txt은 2열로 구성되어 있습니다. 정확히 10,000개의 행이 있습니다.

값은 항상 두 번째 열에서 가져옵니다.

a0_value1따라서 첫 번째 폴더의 이름은 value1이 파일에 있는 두 번째 열의 첫 번째 값인 식으로 지정됩니다 .txt.

bash스크립트에서 이 작업을 수행 하고 싶습니다 . 나는 이런 대본을 쓴 적이 없습니다.

이해합니다 cd. mkdir이것은 $변수의 값을 얻습니다. 나는 #!/bin/bash대본의 시작 부분에 그것을 써야 한다는 것을 알았습니다.

제발, 나한테 이것 좀 해줄 수 있어?

bash 버전 > (이상) 4.0. 감사합니다!

답변1

제가 이해한 내용이 맞다면 file.txt이렇습니다.

abcde  12345
abc    5a3bg2
gdrr   something

등 그리고 폴더 등을 만들고 싶습니다 a0_12345.a0_5a3bg2a0_something

그래서 나는 다음을 사용할 것입니다 :

awk '{ print "mkdir a0_" $2 }' file.txt | bash

한 번만 수행하면 되는 경우 스크립트에 포함할 필요도 없습니다. 위의 내용을 명령줄에 입력하면 됩니다.

노트: 물론 가정하에아니요의 모든 열에는 file.txt공백이 있습니다 .아니요폴더 이름 값에 ', ", ?, 등 셸에 문제를 일으킬 수 있는 "특수" 문자가 *있습니다 .<>&

관련 정보