대화형 rm(rm -i)을 사용하여 삭제된 파일 수 계산

대화형 rm(rm -i)을 사용하여 삭제된 파일 수 계산

대화형으로 삭제된 파일 및 디렉터리 수를 계산하고 싶습니다.

for f in /tmp/mydir/* ; do
  rm -ir "$f"
done

가장 간결하고 우아한 방법으로 이를 수행하는 방법은 무엇입니까?


예:

abc@def:/tmp/mydir$ tree
.
├── 1
├── 2
├── 3
├── 4
├── A
│   ├── 1
│   ├── 2
│   └── 3
├── B
│   ├── 1
│   └── 2
└── C

3 directories, 9 files

모든 답변이 다음과 같은 경우와이(예) 그렇다면 나는 다음과 같은 대답을 기대합니다.

  • 7(개수: 1, 2, 3, 4, A, , B, C) 또는:
  • 10(계산: 1, 2, 3, 4, A/1, A/2, A/3, B/1, B/2) C.

두 버전 모두 인기가 있습니다.

대화형 작업을 실행하기 전후에 파일/디렉터리 수를 셀 수 있다는 것을 알고 있지만 rm실제로는 텍스트 파일에 저장된 파일 사이를 반복하고 있기 때문에 그렇지 않습니다.

답변1

그냥 사용:

rm -vri files | wc -l

Dirs(즉, 삭제된)도 포함됩니다 A. -v성공 removed ’file’(또는 디렉터리) 출력만 으로 전송 stdout되고 다른 모든 출력은 으로 전송되므로 이는 작동합니다 stderr.

12귀하의 예에서는 3개의 디렉터리와 9개의 파일이 있기 때문에 출력이 됩니다 .

관련 정보