find . -mindepth 1 ! -name 'zabbix' ! -path './zabbix/*' -exec rm -rf {} +
这个命令会执行以下操作:
1、使用 find 命令在当前目录(.)下搜索。
2、使用 -mindepth 1 选项从当前目录的子级开始搜索,这样就不会删除当前目录本身。
3、使用 ! -name ‘zabbix’ 选项排除名为 “zabbix” 的文件或文件夹。
4、使用 ! -path ‘./zabbix/*’ 选项排除 “zabbix” 文件夹下的所有文件和子目录。
5、对搜索到的每个文件或子目录执行 rm -rf 命令删除。
请注意,在运行此命令之前,确保你理解它的作用,因为它会删除除 “zabbix” 文件夹及其内容之外的所有文件和子目录。为了避免意外删除重要文件,你可以在执行删除操作之前先检查一下 find 命令的搜索结果:
find . -mindepth 1 ! -name 'zabbix' ! -path './zabbix/*'
这将显示所有将要被删除的文件和子目录。如果列表中的文件都是你想删除的,再运行上面的删除命令。