添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
[root@nctest-snap-test-02 mysql]# find /data/backup/mysql/
/data/backup/mysql/    # 包含目录本身
/data/backup/mysql/01
/data/backup/mysql/02
/data/backup/mysql/03
[root@nctest-snap-test-02 mysql]# 

就会包含目录本身!如果要对目录的时间进行匹配、删除,就可能将目录本身给删除。

问题解决:

所以,大概有2种解决方法。

方法1:使用 *

[root@nctest-snap-test-02 mysql]# find /data/backup/mysql/*
/data/backup/mysql/01
/data/backup/mysql/02
/data/backup/mysql/03
[root@nctest-snap-test-02 mysql]# 

这样,也不包括目录本身,但是,也存在一个问题,当目录是空的时候会报错

[root@nctest-snap-test-02 mysql]# find /data/backup/mysql/*
find: ‘/data/backup/mysql/*’: 没有那个文件或目录
[root@nctest-snap-test-02 mysql]# 

再看方法2:

使用 ! -path ,去除某些目录

[root@nctest-snap-test-02 mysql]# find /data/backup/mysql/ ! -path /data/backup/mysql/
/data/backup/mysql/01
/data/backup/mysql/02
/data/backup/mysql/03
[root@nctest-snap-test-02 mysql]# 

如果目录是空的,也不会报错

[root@nctest-snap-test-02 mysql]# find /data/backup/mysql/ ! -path /data/backup/mysql/
[root@nctest-snap-test-02 mysql]# 

建议第2种解决方法。