특정 디렉터리를 건너뛰려면 rm -rf를 사용하세요.

특정 디렉터리를 건너뛰려면 rm -rf를 사용하세요.

작업 중에 특정 디렉터리를 건너뛸 수 있는지, 어떻게 할 수 있는지 알고 싶습니다 rm -rf.

예를 들어 위치에는 다음 하위 폴더가 포함되어 있습니다(실제로 이는 단지 예일 뿐입니다).

foo
bar
elf
qrs

예를 들어 이 디렉토리에서 스크립트를 실행하는 동안 rm -rf *삭제를 건너뛸 수 있는지 알고 싶습니다 elf.

일반적으로 각 디렉터리를 명령에 전달할 수 있지만 rm -rf foo bar qrs제 경우에는 여러 시스템에 대한 스크립트에 있으므로 각 시스템마다 다른 폴더가 있습니다. 예를 들어 시스템 1에는 다음이 포함될 수 있습니다.

foo
bar
elf
qrs

system2에는 다음이 포함될 수 있습니다.

ubt
dbn
arc
elf
gnt

rm -rf을 제외한 모든 항목을 삭제하고 명령을 동일하게 만들고 싶습니다 elf.

이것이 가능한가?

미리 감사드립니다.

답변1

~에 따르면이것내장된 제외 기능은 없습니다 rm. 그러나 이 문서에서는 일부 셸 명령을 사용하여 동일한 결과를 얻는 여러 가지 방법을 자세히 설명합니다.

첫 번째 방법이 가장 적합한 것 같습니다.

important.txt라는 이름의 파일을 제외한 모든 파일을 삭제하세요.
rm !(important.txt)

답변2

가능한 해결 방법 중 하나:

find -type d ! -name "elf" -delete

관련 정보