디렉토리의 파일을 삭제하는 방법

디렉토리의 파일을 삭제하는 방법

각 디렉토리에서 특정 파일을 삭제해야 합니다.

예: MKRUW, DKRUW, TKRUW 각 디렉토리에서 MKRUW/default/file을 입력하고 .dat 파일을 삭제해야 합니다.

답변1

나는 등이 디렉토리라고 가정 MKRUW합니다 DKRUW. 각 디렉터리의 상위 디렉터리로 이동하여 다음을 시도해 보세요.

find . -name '*.dat'

찾은 파일 목록에 만족 .dat하고 파일 삭제를 계속하려면 동일한 검색을 다시 실행하되 매개변수를 추가하여 파일을 삭제하세요.

find . -name '*.dat' -exec rm -f {} \;

물론 *.dat덜 다재다능한 것으로 자유롭게 변경할 수 있습니다. 예를 들어 이름이 인 파일만 삭제하려는 경우 을 info.dat사용할 수 있습니다 find . -name 'info.dat'.

답변2

MKRUWDKRUW디렉토리 TKRUW이고 각 디렉토리 내에서 일치하는 파일을 삭제하고 default/file/*.dat상당히 현대적인 쉘을 실행 중이라고 가정하면 다음을 사용할 수 있습니다.

echo {MKRUW,DKRUW,TKRUW}/default/file/*.dat

관련 파일 이름 목록을 가져옵니다.

삭제하려는 목록이 확실하다면 다음을 rm바꾸 세요 echo.

rm {MKRUW,DKRUW,TKRUW}/default/file/*.dat

이는 쉘이 {...,...,...}인수를 더 많은 수의 인수(일치하는 항목당 하나의 인수)로 나누어 인수를 확장(AND)하기 때문에 작동합니다. 그런 다음 이러한 매개변수는 위의 경우 각각 *.dat명령에 전달됩니다 . 따라서 위 명령은 동일하지만 다음 명령보다 훨씬 적은 입력이 필요합니다.echormrm

rm MKRUW/default/file/*.dat DKRUW/default/file/*.dat TKRUW/default/file/*.dat

관련 정보