Bash를 사용하여 대규모 파일 생성

Bash를 사용하여 대규모 파일 생성

나는 이것을 알아내려고 다른 명령을 시도했지만 여전히 어디에도 도달하지 못했습니다. 이 질문에 대해 좀 도와주실 수 있나요?

홈 디렉터리에 셔츠라는 하위 디렉터리를 만듭니다. 하위 디렉터리 내에서 style.size.color.ext 형식의 파일 이름으로 108개의 파일을 생성합니다. 여기서 각 파일에는 다음 표의 값 조합 하나가 포함됩니다.

Style   tee, crew, turtleneck
Size    XXL, XL, L, M, S, XS
Color   red, yellow, blue
Extension   info, inv

이것이 제가 사용한 마지막 명령입니다.

$ touch shirts/{tee,crew,turtleneck}.{XXL,XL,L,M,S,XS}.{red,yellow,blue}/{info,inv}

답변1

터치 명령에 약간의 오류가 있습니다. 원래 명령,

touch shirts/{tee,crew,turtleneck}.{XXL,XL,L,M,S,XS}.{red,yellow,blue}/{info,inv}

결국에는/다시 디렉토리를 생성하려고 시도하는데 디렉토리가 존재하지 않기 때문에 다음과 같은 오류가 발생합니다.

touch: cannot touch `/shirts/turtleneck.XS.blue/inv': No such file or directory

그러나 파일만 필요하므로 원래 명령을 다음과 같이 변경해야 합니다.

touch shirts/{tee,crew,turtleneck}.{XXL,XL,L,M,S,XS}.{red,yellow,blue}.{info,inv}

추신: 디렉터리가 이미 존재하는지 확인해야 합니다 shirts. 그렇지 않으면 다시 동일한 오류가 발생합니다 cannot touch.

답변2

귀하의 설명에 따르면 이러한 108개 파일 각각의 이름은 형식을 따라야 합니다 style.size.color.ext.

그래서 그래야 한다

mkdir shirts
touch {tee,crew,turtleneck}.{XXL,XL,L,M,S,XS}.{red,yellow,blue}.{info,inv}

지금 하고 있는 작업 touch은 빈 파일을 만드는 것인데, 다른 하위 디렉터리가 있는 셔츠 디렉터리를 만들려고 합니다. touch그렇게 할 수 없습니다.

touch편집: 위의 cmd를 더 짧게/더 좋게 만들 수도 있습니다 .

touch {tee,crew,turtleneck}.{{X,XX,}L,M,{X,}S}.{red,yellow,blue}.{info,inv}

관련 정보