grep - phù hợp với bất cứ điều gì nhưng đưa ra filetype


5

Tôi muốn dọn sạch thư viện nhạc của mình để không nhận thêm bất kỳ thông báo "tìm kiếm plugin phù hợp" nào từ Rhybeatbox khi nó xuất hiện trên một số Relic WMA.

Tôi có các công cụ, nhưng bây giờ tôi muốn TÌM các tệp này. Tôi có thể nhận được một danh sách tất cả các tệp nhạc có ls, sau đó chuyển nó sang grep và bắt tất cả các mp3 như thế này:

ls */* | grep \.mp3$

Bây giờ tôi muốn lọc ra tất cả các MP3, tôi sẽ làm thế nào? Tôi đã loay hoay rất nhiều với ^ và ~ và! nhưng tôi dường như không bao giờ đến được nơi nào Tôi BIẾT thực tế là có một vài WMA trong đó, nhưng tại sao tôi phải tìm kiếm thủ công khi tôi có máy tính xD

Có ai giúp được không?

linux  grep  regex 

Câu trả lời:


12

grep -v sẽ trả về tất cả các dòng không khớp với truy vấn tìm kiếm của bạn

bạn cũng có thể dùng:

find . ! -name "*.mp3"

để làm toàn bộ trong một lệnh.


2
Để đảm bảo an toàn, tôi sẽ đi với -iname thay vì -name để thực hiện một trường hợp không nhạy cảm. Bạn có thể có hoặc không có một số tệp .MP3 ngồi xung quanh, v.v ...
jonathanserafini

4

Có một cái nhìn vào -vchuyển đổi grep, mà đảo ngược phù hợp.

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.