首页 > 解决方案 > 如何删除所有具有相同扩展名的文件,除了一个带有 rm 的文件

问题描述

我想删除除特定 example.o 之外的所有扩展名为 .o 的文件,我该如何使用 rm 执行此操作?编辑:环境:zsh

标签: regexwildcardzshrm

解决方案


在中zsh,您可以使用KSH_GLOB它:extglobbash

setopt KSH_GLOB

echo rm !(example).o

其他选项是使用extended_glob稍微不同的通配符语法:

setopt extended_glob

echo rm (^example).o

where^用于否定。

对输出满意后,删除echobefore rm


推荐阅读