"find"一个好用的find开关: -empty

ORACLE快速恢复区下因为每天备份、删除过期备份而留下很多空目录,正发愁怎样删除,写个脚本估计还是得递归的。无意中发现find命令的一个test开关 -empty,正好可以用作这一用途。

[oracle@localhost ORCL]$ pwd
/u02/flash_recovery_area/ORCL
[oracle@localhost ORCL]$ ls
archivelog  autobackup  backupset  controlfile  datafile  test.empty
[oracle@localhost ORCL]$ find . -empty
./autobackup/2010_11_15
./autobackup/2010_11_13
./autobackup/2010_11_14
./autobackup/2010_11_11
./autobackup/2010_11_12
./autobackup/2010_11_10
./test.empty
./backupset/2010_11_15
./backupset/2010_11_13
./backupset/2010_11_14
./backupset/2010_11_11
./backupset/2010_11_12
./backupset/2010_11_10
./controlfile
./archivelog/2010_11_13
./archivelog/2010_11_14
./archivelog/2010_11_11
./archivelog/2010_11_12
./archivelog/2010_11_10

ORACLE在删除过期备份的时候留下了这么多的空目录。./test.empty是一个测试用的空文件。

现在可以轻松删除了:
[oracle@localhost ORCL]$ find . -empty -delete
[oracle@localhost ORCL]$ find . -empty
[oracle@localhost ORCL]$ ls
archivelog  autobackup  backupset  datafile
[oracle@localhost ORCL]$ ls -lR
.:
total 32
drwxr-x--- 5 oracle oinstall 4096 Nov 17 20:30 archivelog
drwxr-x--- 3 oracle oinstall 4096 Nov 17 20:30 autobackup
drwxr-x--- 3 oracle oinstall 4096 Nov 17 20:30 backupset
drwxr-x--- 2 oracle oinstall 4096 Oct 25 22:07 datafile

./archivelog:
total 24
drwxr-x--- 2 oracle oinstall 4096 Nov 17 15:04 2010_11_15
drwxr-x--- 2 oracle oinstall 4096 Nov 16 19:28 2010_11_16
drwxr-x--- 2 oracle oinstall 4096 Nov 17 12:40 2010_11_17

./archivelog/2010_11_15:
total 100180
-rw-r----- 1 oracle oinstall 51229184 Nov 15 22:00 o1_mf_1_14_6g2h8jkk_.arc
-rw-r----- 1 oracle oinstall 51228672 Nov 15 22:21 o1_mf_1_15_6g2jgfgz_.arc

./archivelog/2010_11_16:
total 50092
-rw-r----- 1 oracle oinstall 51229184 Nov 16 19:28 o1_mf_1_16_6g4tp8gy_.arc

./archivelog/2010_11_17:
total 51260
-rw-r----- 1 oracle oinstall 52426240 Nov 17 12:40 o1_mf_1_17_6g6q5pmw_.arc

./autobackup:
total 8
drwxr-x--- 2 oracle oinstall 4096 Nov 17 15:04 2010_11_16

./autobackup/2010_11_16:
total 7056
-rw-r----- 1 oracle oinstall 7208960 Nov 16 21:02 o1_mf_s_735253353_6g5079nt_.bkp

./backupset:
total 8
drwxr-x--- 2 oracle oinstall 4096 Nov 16 21:01 2010_11_16

./backupset/2010_11_16:
total 86148
-rw-r----- 1 oracle oinstall 88121344 Nov 16 21:02 o1_mf_nnnd1_TAG20101116T210127_6g5057z6_.bkp

./datafile:
total 973080
-rw-r----- 1 oracle oinstall 104865792 Nov 16 21:01 o1_mf_example_6dc3s8d1_.dbf
-rw-r----- 1 oracle oinstall 335552512 Nov 16 21:01 o1_mf_sysaux_6dc3r56f_.dbf
-rw-r----- 1 oracle oinstall 513810432 Nov 16 21:01 o1_mf_system_6dc3pfpm_.dbf
-rw-r----- 1 oracle oinstall   3153920 Nov 16 21:01 o1_mf_test_ts_6dc3svyc_.dbf
-rw-r----- 1 oracle oinstall  31465472 Nov 16 21:01 o1_mf_undotbs1_6dc3sqn7_.dbf
-rw-r----- 1 oracle oinstall   6561792 Nov 16 21:01 o1_mf_users_6dc3strk_.dbf
[oracle@localhost ORCL]$

实验了几种情况,总结一下:
empty开关测试的是空文件或空目录。
如果查找位置下的某个目录除了空文件和空目录外就不包含其他内容,那么该目录也会被当成空目录删除。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24131851/viewspace-678377/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/24131851/viewspace-678377/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值