regex - 删除除某些文件之外的文件的表达式

标签 regex linux bash

这个文件列表:

FILE0001
FILE0002
FILE0003
FILE0004
FILE0005
FILE0006
FILE0007
FILE0008
FILE0009
FILE0010

我想删除除以下内容之外的所有内容:

FILE0001 
FILE0008 
FILE0010 

我该怎么做这个表达式?

可能会有一个非常耗时的表达式,因为文件很大。 该目录中还有其他文件。并且不会受到影响或删除。即使在相同的模式名称中。

例子:

FILE0001.1
FILE0002.2

最佳答案

bash 模式 ( http://www.gnu.org/software/bash/manual/bashref.html#Pattern-Matching )

shopt -s extglob
echo rm FILE00!(01|08|10)

如果您满意,请删除“echo ”。

关于regex - 删除除某些文件之外的文件的表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24769824/

相关文章:

regex - IP地址子网的正则表达式

c - C 中默认调度程序的 pthread 良好值设置

bash - 为什么使用 2>&1 指令重定向 stderr 失败?预计产出如何发挥作用?

linux - 从 bash 脚本将变量重新导出到环境

python - 使用带有 Unicode 的 Python 正则表达式进行 BackReference

java - 将字符串替换为文本文件的某些部分

Javascript Regexp - 匹配特定短语后的字符

linux - 在Linux中如何获取分配给当前进程的堆栈区域?

linux - 如何转义作为 shell 脚本中命令的关键字?

bash - 如何通过双击使该 file.sh 可执行?