此處,因為是逆向思維。有兩種思路:一是使用 ls|grep -v "XXXX"篩選,一種是開啟反選shopt -s extglob。
舉例說明:
如下,我需要刪除除了test.sh之外的所有文件。
1. 執行ls|grep -v "test.sh"|xargs rm -rf
2.或者
2.1開啟反選 shopt -s extglob
2.2 創建2個文件 a.txt b.txt.
2.3 列出現有文件。
2.4 執行刪除,文件不等於test.sh
2.5 列出文件。
擴展,如何要保留多個,grep -v "X*",或者在反選括號內用 | 隔開。支持模糊*匹配等。