歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux下mv命令排除某些文件

Linux下mv命令排除某些文件

日期:2017/2/28 14:49:33   编辑:Linux教程

比方說,我想把當前目錄下的全部文件移到某個子目錄下,先建好目錄

mkdir myfolder

然後用mv把全部文件移進去。等等,我可不想把myfolder移到myfolder裡面(事實上也不會,linux會提示一個錯誤 mv: 無法將目錄"myfolder" 移動至自身的子目錄"./myfolder/myfolder" 下)。mv還好辦,但換成是rm呢?我想刪除該目錄下的除myfolder之外的其他文件和目錄。有啥招數呢?

第一招

find -maxdepth 1 -not -name myfolder -not -name . -exec rm -rf {} \;

還可以寫成

find -maxdepth 1 \! -name myfolder \! -name . -exec rm -rf {} \;

看出來了 \! 等同於 -not

第二招

find -not -regex '\./myfolder.*' -not -regex '\.' -exec rm -rf {} \;

需要略懂一點正則表達式。

Copyright © Linux教程網 All Rights Reserved