Linux中查找指定类型文件以及删除例子

在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

时间: 2024-10-23 07:49:22

Linux中查找指定类型文件以及删除例子的相关文章

Linux中查找当前目录下文件并更改扩展名

Linux中查找当前目录下文件并更改扩展名? 更改所有.gz文件为.aa# find ./ -http://www.aliyun.com/zixun/aggregation/11696.html">name "*.gz" -exec rename .gz .aa '{}' \; 示例: 执行命令之前的结果 [root@localhost software]# ll 总用量 84692  -rw-r--r--. 1 root root 13587692 6月  19 16

详解Linux中查找目录和文件的find和locate命令

  find find 路径 -命令参数 [输出形式] 参数说明: 路径:告诉find在哪儿去找你要的东西, 命令参数:参数很多下面会说到 输出形式:输出形式很多,-print,-printf,-print0,-exec,-ok,-ls反正很多自己看手册吧. 说一下exec, -exec find命令对匹配的文件执行该参数所给出的其他linux命令.相应命令的形式为' 命令 - and' {} ;,注意{ }和;之间的空格. -ok 和- exec的作用相同,只不过和会人交互而已,OK执行前会向

如何在 Linux 中查找一个文件

对于新手而言,在 Linux 中使用命令行可能会非常不方便.没有图形界面,很难在不同文件夹间浏览,找到需要的文件.本篇教程中,我会展示如何在 Linux 中查找特定的文件. 第一步要做的是通过 SSH 连接到你的 Linux.在 Linux 中查找文件有两种方法.一种是使用 find 命令,另外一种是使用 locate 命令.我们先看第一种. find 命令 使用 Linux find 命令可以用不同的搜索标准如名字.类型.所属人.大小等来搜索目录树.基本语法如下: # find path ex

如何在Linux中查找一个文件

对于新手而言,在 Linux 中使用命令行可能会非常不方便.没有图形界面,很难在不同文件夹间浏览,找到需要的文件.本篇教程中,我会展示如何在 Linux 中查找特定的文件. 第一步要做的是通过 SSH 连接到你的 Linux.在 Linux 中查找文件有两种方法.一种是使用 find 命令,另外一种是使用 locate 命令.我们先看第一种. find 命令 使用 Linux find 命令可以用不同的搜索标准如名字.类型.所属人.大小等来搜索目录树.基本语法如下: # find path ex

fdupes:Linux 中查找并删除重复文件的命令行工具

对于大多数计算机用户而言,查找并替换重复的文件是一个常见的需求.查找并移除重复文件真是一项令人不胜其烦的工作,它耗时又耗力.但如果你的机器上跑着GNU/Linux,那么查找重复文件会变得十分简单,这多亏了fdupes工具. fdupes--在Linux中查找并删除重复文件 fdupes是啥东东? fdupes是Linux下的一个工具,它由Adrian Lopez用C编程语言编写并基于MIT许可证发行,该应用程序可以在指定的目录及子目录中查找重复的文件.fdupes通过对比文件的MD5签名,以及逐

Linux终端上统计指定类型文件的数目的方法

  下面我们来看看在一个目录中用 ls,grep 和 wc 命令统计指定类型文件数目的技巧.命令之间的交互通过命名管道完成. grep – 用户根据给定模式或正则表达式进行搜索的命令. wc – 用于统计行.字和字符的命令. 统计普通文件的数目 在 Linux 中,普通文件用符号 - 表示. 代码如下: tecmint@tecmint ~/Linux-Tricks $ ls -l | grep ^- | wc -l 7 统计目录的数目 在 Linux 中,目录用符号 d 表示. 代码如下: te

字符串-linux中查找文件中中文逗号

问题描述 linux中查找文件中中文逗号 .csv文件中有一个字段是一个中文的逗号",",可是我把这个文件放到linux系统中用getline() 读取一行到一个字符串中str, 再用str.find() 查找这个逗号,为什么找不到啊? 怎么才能找到??? 求大牛解答,急急急!!! 解决方案 完全可以用linux cat指令加上grep进行查找,十分方便 解决方案二: 你用unicode方式读取文件.然后用wstring来查找 同时你的linux需要支持中文 解决方案三: 我是要读取文

python实现在目录中查找指定文件的方法_python

本文实例讲述了python实现在目录中查找指定文件的方法.分享给大家供大家参考.具体实现方法如下: 1. 模糊查找 复制代码 代码如下: import os from glob import glob #用到了这个模块 def search_file(pattern, search_path=os.environ['PATH'], pathsep=os.pathsep):     for path in search_path.split(os.pathsep):         for mat

linux中查找目录下包含某个类的jar文件

支持cygwin(两种路径格式都支持),支持相对路径 #!/bin/bash #从目录中的jar文件中查找指定的类 path=$1 name=$2 if [ "" = "$path" ];then  echo "path not specified"  exit fi if [ "" = "$name" ];then  echo "name not specified"  exit 1