텍스트 파일에서 폴더 만들기

텍스트 파일에서 폴더 만들기
ls -R $pwd  > text.txt    

위 명령은 다음 txt 파일을 생성합니다.

engagement
groups
solo
text.txt

./engagement:
VAM01427.JPG
_VJR3208.JPG
_VJR3244.JPG
_VJR3281.JPG

./groups:
family
friends

./groups/family:
_VJR3358.JPG
_VJR3376.JPG
_VJR3379.JPG

./groups/friends:
_VJR3404-2.jpg
_VJR3416.jpg
_VJR3456.JPG

./solo:
VAM01381.JPG
VAM01385.JPG
VAM01386.JPG

이 텍스트 파일을 기반으로 mkdir 명령을 사용하여 폴더를 생성해 보았습니다.

명령을 실행할 때: cat text.txt | xargs -L 1 mkdir 이 명령은 중복 폴더를 생성합니다.

질문을 올바르게 작성할 수 없습니다. 누구든지 도와줄 수 있나요?

답변1

디렉토리만 나열하도록 텍스트 파일의 형식을 변경하면 전체 문제가 훨씬 간단해집니다.

find . -type d >directories.txt

그 다음에

while IFS= read -r dir; do mkdir -p "$dir"; done <directories.txt

여기서는 디렉토리 이름에 공백이 포함될 수 있지만 개행 문자는 포함되지 않는다고 가정합니다.

답변2

텍스트 파일에서 원하는 작업($HOME 폴더에 디렉터리 생성)을 수행할 수 있었으므로 cat text.txt | grep ./ | awk -F: '{ print $1}' | xargs -L 1 mkdir먼저 ./ 줄을 필터링한 다음 끝에 있는 :을 제거하여 폴더를 만듭니다.

관련 정보