Xóa các tệp khớp với biểu thức chính quy phạm vi số


13

Tôi có một thư mục có nhiều tập tin. Một số tệp dữ liệu được gắn nhãn 1, 2, 3, ..., 300

Tôi muốn loại bỏ các tệp dữ liệu bằng cách sử dụng thiết bị đầu cuối. Làm thế nào để tôi làm điều này?

Tôi muốn làm một cái gì đó như

rm some-regular-expression-giving-numbers-from-0--300

Có phải chúng chỉ được gọi 1, 2v.v. và tất cả chúng có khớp với một biểu thức cho các số từ 0 đến 300 hay có bất kỳ yếu tố nào khác trong tên tệp không? Bạn có thể cho chúng tôi một ví dụ cụ thể hơn, có thể với một danh sách thư mục?
slhck

Vâng, họ chỉ được gọi là 1, 2, v.v.
smilebuddha

Câu trả lời:


16

Bạn co thể thử

rm some-files-with-numbers{0..300}

Điều này sẽ xóa:

some-files-with-numbers0

some-files-with-numbers1

some-files-with-numbers2

...

some-files-with-numbers300

1

Tôi thích câu trả lời của siêu nhân, nhưng để thêm một khả năng khác:

find . -regex './some-files-with-numbers[123]?[0-9]?[0-9]' -delete

1
Thế còn some-files-with-numbers301?
cYrus

@cYrus Tôi nhận thức được những hạn chế :) Câu trả lời của tôi nhắm nhiều hơn vào mục đích thay thế cho siêu nhân.
qdii
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.