디렉터리에서 실행 권한이 있는 모든 파일을 삭제합니다.

디렉터리에서 실행 권한이 있는 모든 파일을 삭제합니다.

executable디렉터리에서 모든 파일을 삭제 해야 합니다 . 내 디렉토리에는 다음이 포함되어 있습니다.구성파일과실행 가능 파일executable파일을 삭제하려면 불필요한 파일을 모두 삭제해야 합니다 .

이를 위해 다음과 같은 명령을 작성했습니다.

ls -lp | grep -v / | awk 'match($0,"-**x*x*x",a);{print  a[1]}'| \
awk '{print $9}' | xargs rm -f

다른 방법이 있나요?

나는 find다른 모든 하위 디렉토리 파일을 나열합니다. grep -v /현재 폴더 내의 하위 디렉터리를 피하기 위해 를 사용합니다 .

답변1

find이 작업 에 사용해야 할 것 :

find . -type f -executable

현재 사용자가 실행 가능한 파일이 반복적으로 표시됩니다.

현재 디렉터리로만 검색을 제한합니다.

find . -maxdepth 1 -type f -executable

제거하다:

find . -maxdepth 1 -type f -executable -exec rm {} +

또는 GNU를 사용하십시오 find:

find . -maxdepth 1 -type f -executable -delete

참고로, 현재 사용자뿐만 아니라(일반 실행 권한 비트가 설정된) 모든 사용자가 실행 가능한 파일을 찾으려면 다음을 수행하십시오.

find . -type f -perm /111

관련 정보