it-swarm-vi.com

Làm thế nào để bạn chạy một bản rm khô để xem những tập tin nào sẽ bị xóa?

Tôi muốn xem những tập tin nào sẽ bị xóa khi thực hiện rm trong linux. Hầu hết các lệnh dường như có tùy chọn chạy khô để chỉ hiển thị thông tin như vậy, nhưng dường như tôi không thể tìm thấy tùy chọn như vậy cho rm. Điều này thậm chí có thể?

91
Cory Klein

Nói rằng bạn muốn chạy:

rm *.txt

Bạn chỉ có thể chạy:

echo rm *.txt

hoặc thậm chí chỉ:

echo *.txt

để xem tập tin nào rm sẽ xóa, vì đó là Shell mở rộng *.txt, không phải rm.

Lần duy nhất điều này sẽ không giúp bạn là cho rm -r.

Nếu bạn muốn xóa các tệp và thư mục theo cách đệ quy, thì bạn có thể sử dụng find thay vì rm -r, ví dụ.

find . -name "*.txt" -print

sau đó nếu nó làm những gì bạn muốn, thay đổi -print đến -delete:

find . -name "*.txt" -delete
127
Mikel

Bạn có thể nói:

rm -i

để chạy nó trong chế độ tương tác, vì vậy rm sẽ nhắc bạn xác nhận xem có nên xóa từng tệp không. Bạn chỉ có thể trả lời không cho mỗi tệp để xem cái nào sẽ bị ảnh hưởng.

17
Justin Ethier

Bạn có thể sử dụng ls để liệt kê tất cả các tệp sẽ bị xóa bởi rm:

ls ../path/*.txt

Nếu bạn cần liệt kê để xem các tệp sẽ bị xóa với đệ quy rm, thì hãy sử dụng -R cờ với ls:

ls -R ../path/*.txt
4
Veneet Reddy