디렉터리를 반복하고 각 디렉터리에 특정 유형의 파일 이름이 포함된 텍스트 파일을 만듭니다.

디렉터리를 반복하고 각 디렉터리에 특정 유형의 파일 이름이 포함된 텍스트 파일을 만듭니다.

각 하위 디렉터리에서 문자 S로 시작하는 모든 .mp4 파일을 찾아 각 하위 디렉터리의 텍스트 파일에 전체 경로와 함께 나열하려고 합니다.

for f in ./*;  do  (cd “$f”; printf "file ‘$PWD/%s’\n” S*.mp4>mylist.txt ); done;

하지만 그건 나한테만 해당되는 거야

>

내가 여기서 무엇을 놓치고 있는 걸까요?

답변1

하위 디렉토리 이름을 라는 파일에 넣은 다음 루프에서 names.txt명령을 사용하십시오 .find

#!/bin/bash

cd  parent_directory
ls -d */ >names.txt

for i in $(cat names.txt); do
    cd ${i}
    find $PWD -type f -name "S*.mp4" > outputfile.txt

    cd ..   
done

관련 정보