마지막 10개 파일을 제외한 모든 파일을 삭제하는 방법

마지막 10개 파일을 제외한 모든 파일을 삭제하는 방법

자동화된 처리 결과 순차적으로 이름이 붙은 파일이 쌓이고 마지막 10개 파일만 보관하고 싶습니다. 나는 이것을 시도했고 모든 것을 제거하는 효과가 있었습니다.

ls -r | more +11 | xargs rm

분명히 파이핑은 more +n매개변수에 상관없이 전체 결과를 파이핑하게 만듭니다 +n.

올바른 접근 방식은 무엇입니까?

답변1

인정합니다. more문서의 어떤 내용도 이것이 일어날 것이라는 점을 명확하게 보여주지 않습니다. 그러나 지정된 줄 번호(구체적으로 11)에서 입력(파일 목록) 표시(출력/처리)를 시작하려고 하므로 사용할 논리 명령은 다음과 같습니다 tail.

ls -r | tail -n +11 | …

현명한 조언: 위험한 일을 하기 전에 파이프를 사용 cat하거나 (명령 없이) xargs이와 같은 것을 테스트하십시오 xargs rm.

관련 정보