linux删除除隐藏文件和文件夹之外的所有文件

时间:2017-11-07 14:37:01

标签: linux rm

我的目录结构如下:

/Folder1/file1
/file2
/file3
/.file4

我只需要移除/file2/file3。我想保留/Folder1/file1/.file4

3 个答案:

答案 0 :(得分:3)

如果禁用了globbing,rm *将起作用。您可以使用dotglob命令检查是否已禁用shopt。如果打开,请使用:

shopt -u dotglob
rm *
shopt -s dotglob

答案 1 :(得分:0)

find . -type f -name "[^.]*" -delete

(首先没有-delete,确保你输入正确。)

答案 2 :(得分:-1)

find . -type f -name file{2,3} -delete

type -f 仅搜索文件,忽略目录

file {2,3} file2和file3

file {2..6} 表示范围(file2,file3,file4,file5 file6)

除非您在文件名之前搜索通配符,例如“* file”,否则不会删除隐藏文件。

仅在当前目录中运行,不要删除/ Folder1 / file1

find . -maxdepth 0 -type f -name file{2,3} -delete

但是要在当前目录中运行,我更喜欢旧的 rm

rm file*