在Linux服务器上运行Weblogic服务器,每次需要关闭Weblogic服务器后,都会在domain下留下一些*.lok的文件,导致下次启动的时候因为这些文件无法启动,因此,需要删除产生的所有.lok文件。

手动一个一个的删除比较麻烦,需要domain的每个目录都进去看看有没有,有的话删除。

可以通过执行下面的命令查看有哪些这样的文件和批量删除它们。

find ./ -name "*.lok"   // 查找文件

find ./ -name "*.lok" |xargs rm -fr  // 查找文件并删除

1. find -name '*lck*' -exec rm {} \;

查找当前文件夹及其子文件夹下所有文件名中带有『lck』字符的文件并删除之。需要注意的是find -name *lck*,也就是没有加单引号,则只搜寻当前目录下的文件而不会搜索子文件夹内的文件。

顺便列一下find的相关使用

1. find   /  -name test  | xargs rm -rf      (这个命令可以查找test文件或者目录,并删除!)

2. 用下面的命令可以查找 /home下最近两天修改过的文件:find /home -type f -mtime -2

如果要把这些文件也删掉,那么可以:find /home -type f -mtime -2 -exec rm {} \;

-type f  查找文件

-type d 查找目录

-mtime -2 修改时间在2天内

-mtime +3 修改时间在3天前

-exec rm {} \;   将找到的文件 (假定找到文件的名字为 a.txt), 执行 rm a.txt 命令

find有很多参数,find一次查找多个指定文件或者排除某类文件,在 GREP 中匹配多个关键字的方法

(1)Linux下find一次查找多个指定文件:

查找a.html和b.html

find . -name "a.html"  -name "b.html"

find . -regex '.*\.txt\|.*\.doc\|.*\.mp3'

find . -regex '.*\.txt\|.*\.doc\|.*\.mp3'

./a.txt

./a.doc

./a.mp3

(2)排除某些文件类型:

排除目录下所有以html结尾的文件:

find . -type f ! -name "*.html"

find . -type f ! -name "*.html"

./ge.bak.02.09

./ge.html.changed.by.jack

./a.txt

./a.doc

./a.mp3

(3)排除多种文件类型的示例:

find . -type f ! -name "*.html" -type  f ! -name "*.php" -type  f ! -name "*.svn-base"  -type  f ! -name "*.js"  -type  f ! -name "*.gif"  -type  f ! -name "*.png"  -type  f ! -name "*.cpp"  -type  f ! -name "*.h"  -type  f ! -name "*.o"  -type  f ! -name "*.jpg"  -type  f ! -name "*.so"  -type  f ! -name "*.bak"  -type  f ! -name "*.log"

(3)在 GREP 中匹配多个关键字的方法:

grep查找多个数字的文件:

-r 递归,-E:正则  -l:只显示文件名

root@116.255.139.240:~/a# grep -r -E '0341028|100081|10086|10001' *

a.txt:100081

b.txt:10086

c/cc.txt:0341028

c/cc.txt:100081

c/cc.txt:10086

c/cc.txt:10001

c.txt:10001

d.txt:0341028

grep -r  -E -l '0341028|100081|10086|10001' *

a.txt

b.txt

c/cc.txt

c.txt

d.txt

多种类型文件示例:

find . -name "*.html" -o -name "*.js"|xargs grep -r "BusiTree"

用Awk:

find . -name "*.php"|awk '{print "cat " $0 " |grep -H dbsys. www.111cn.net"}'|sh

Logo

更多推荐