在linux中如何快速查找文件或者某个字符

(3) 2024-09-07 21:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
在linux中如何快速查找文件或者某个字符,希望能够帮助你!!!。

在linux系统中大量的文件,我们如何快速定位找出我们需要的文件?下面我们来给大家揭晓答案。

在linux中如何快速查找文件或者某个字符_https://bianchenghao6.com/blog__第1张

如find命令,它能够迅速在指定范围内查找到文件。如,在/usr/bin/目录中查找zip命令。

#Find /usr/bin/ -name zip -print

/usr/bin/zip

从上面的实例中,可以看到find会深入这个路径的每一个子目录去寻找,因此如果指定“/”,那么就查找整个文件系统。-name选项指定了文件名,zip.另一种表达形式可以使用通配符来指定文件名,如“find ~/ -name *.c -print”将列出用户主目录下所有的c程序文件。-print的意思是将结果输出到标准输出(这里指的是屏幕)。Find命令会打印出文件的绝对路径。

Find命令还可以指定文件的类型。如-type选项定位特殊文件类型。例如在/etc/目录中查找名叫init.d的目录。

#find /etc/ -name init.d -type d print

find :/etc/ssl/private:Permission denied

find:/etc/cups/ssl:Permission denied /etc/init.d

从上面例子中,我们可以看到出现了两行permission denied.原因是普通用户没有这两个目录的权限。

在linux中如何快速查找文件或者某个字符_https://bianchenghao6.com/blog__第2张

-type选项可以使用的参数如下所示

Find命令的-type选项可供使用的

参数

含义

参数

含义

b

块设备文件

f

普通文件

c

字符设备文件

p

命名管道

d

目录文件

l

符号连接

Find命令还可以通过指定时间来查找文件。-atime 用来查找最后一次使用在n天前的文件,

-mtime n用来查找最后一次修改在n天前的文件。但是在实际使用过程中,很少能准确确定n的大小。在这种情况下,可以用+n表示大于n,用-n表示小于n。例如,在/usr/bin/中查找最近100天内没有使用过的命令(就是最后一次使用在100天或100天以前的命令)

Find /usr/bin/ -type f -atime +100 -print

/usr/bin/pilconvert.py

/usr/bin/espeak-synthesis-driver.bin

/usr/bin/pildriver.py

/usr/bin/pilfont.py

/usr/bin/gnome-power-bugreport.sh

/usr/bin/gnome-power-cmd.sh

/usr/bin/pilprint.py

/usr/bin/pilfile.py

在linux中如何快速查找文件或者某个字符_https://bianchenghao6.com/blog__第3张

如下面的查找命令,当前目录中,在最近一天内修改过的文件。

#find . -type f -mtime -1 -print

./text1

./day

./weather

在linux中如何快速查找文件或者某个字符_https://bianchenghao6.com/blog__第4张

查找指定时间内修改过的文件。

#find -atime -2

按照目录或文件的权限来查找文件

#find /opt/soft/test/ -perm 777

在linux中如何快速查找文件或者某个字符_https://bianchenghao6.com/blog__第5张

按类型查找。

#find . -type f -name “*.log”

查找当前目录大于1k的文件。

#find . -size +100c -print

另外一个命令which文件的定位。Which是在path变量指定的路径中,搜索某个系统命令的位置,返回第一个搜索结果。使用which命令,可看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。Which的使用方法如:

#which lsmod

Which的命令参数说明如下。

-n指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。

-p与-n参数相同,但此处的文件名长度包含了文件的路径。

-w指定输出时栏位的宽度。

-v显示版本信息。

在linux中如何快速查找文件或者某个字符_https://bianchenghao6.com/blog__第6张

最后,介绍一下管道,什么是管道,管道起了什么样的作用?

管道将“重定向”再向前推进了一步。通过一根竖线“|”,将一条命令的输出连接到另一条命令输入。如何在文件列表中查找文件名中包含某个特定字符串的文件。

#ls | grep ay

days

hrad_days

mplayer

mplayer~

my_days

ls 列出当前目录下的所有文件名。

管道“|”接收到这些输出,并把他们发送给grep命令作为其输入。Grep在这些文件列表中查找包含字符串ay的文件名,并标准输出(也就是显示器)显示。

在linux中如何快速查找文件或者某个字符_https://bianchenghao6.com/blog__第7张

命令中可以使用多个管道,构造出复杂的shell命令。合理使用管道是提高工作效率的有效手段。

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复