linux删除排除某个文件
时间: 2023-04-27 16:01:00 浏览: 363
在Linux中,可以使用以下命令来删除文件,但排除某个文件:
```
rm -r !(filename)
```
其中,`filename`是要排除的文件名。这个命令会删除除了`filename`以外的所有文件和目录。
需要注意的是,这个命令只能在Bash shell中使用,而且需要开启`extglob`选项。如果没有开启,可以使用以下命令开启:
```
shopt -s extglob
```
相关问题
linux删除文件 排除
要在 Linux 中删除文件,可以使用 `rm` 命令。但是如果你想排除某些文件或目录,可以使用 `-exclude` 参数来指定要排除的文件或目录。
例如,如果你想删除一个目录及其下所有文件,但想排除某个子目录,可以使用以下命令:
```
rm -r /path/to/directory --exclude=/path/to/directory/excluded_subdirectory
```
其中,`-r` 参数表示递归删除整个目录,`--exclude` 参数用于指定要排除的子目录。
同样地,如果你想删除一个目录下所有 `.txt` 文件,但想排除某个特定文件,可以使用以下命令:
```
rm /path/to/directory/*.txt --exclude=/path/to/directory/excluded_file.txt
```
这会删除所有 `.txt` 文件,但排除指定的文件。
注意,`--exclude` 参数只在 `rsync` 和 `cp` 命令中可用。因此,如果要在 `rm` 命令中使用它,需要安装 `rmtrash` 或 `trash-cli` 等第三方工具。
linux删除除了某个文件
要在Linux中删除除了某个文件之外的所有文件,可以使用以下命令:
```
find . ! -name 'filename' -type f -delete
```
其中,`.`表示当前目录,`! -name 'filename'`表示不包括文件名为`filename`的文件,`-type f`表示只删除普通文件,不包括目录和符号链接,`-delete`表示删除符合条件的文件。
请将命令中的`filename`替换为你要保留的文件名。执行该命令后,除了指定的文件之外的所有文件都会被删除。