我有一個mp3播放器。我已經將它連接到我的個人電腦,該電腦以Ubuntu作爲操作系統。 我想刪除所有不是.mp3的文件。如何刪除不是mp3的文件?
我知道刪除它們的命令是rm * .mp3,但是否定這種命令的組合是什麼? 我試過了:rm^.mp3,^ mp3^[mp3],但他們沒有工作!任何建議?
我有一個mp3播放器。我已經將它連接到我的個人電腦,該電腦以Ubuntu作爲操作系統。 我想刪除所有不是.mp3的文件。如何刪除不是mp3的文件?
我知道刪除它們的命令是rm * .mp3,但是否定這種命令的組合是什麼? 我試過了:rm^.mp3,^ mp3^[mp3],但他們沒有工作!任何建議?
假設你正在使用bash
和extglob
設置,你應該能夠:
rm !(*.mp3)
我會嘗試測試與ls
盲目運行命令之前:
ls !(*.mp3)
要檢查值爲extglob
:
shopt extglob
並打開它,如果需要的話:
shopt -s extglob
使用GNU發現:
find FOLDER -not -iname '*.mp3' -not -type d -delete
將從文件夾中啓動,並遞歸經過子文件夾,刪除它並沒有結束任何文件mp3(不區分大小寫),只要這個文件不是目錄。
問題是要刪除所有不是mp3的文件,但thx無論如何! –
它現在將刪除不是MP3的東西 – Squidly
從DIR
遞歸刪除所有非MP3文件打印他們:
find dir -type f | egrep -vi "\.mp3$"
刪除它們
find dir -type f | egrep -vi "\.mp3$" | xargs rm -f
刪除所有非MP3文件:
find . -type f ! -name '*.mp3' -delete
和BTW。不要只用實際的rm命令來嘗試一些東西。使用諸如「echo!(*。mp3)」之類的東西是檢查實際刪除內容的好方法... – bcelary
完美地工作。非常感謝你! –
也許你添加命令來設置extglob'shopt -s extglob' ;-) – tamasgal