Linux操作系统下查找文件的几种方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux操作系统下查找文件的几种方法相关的知识,希望对你有一定的参考价值。
linux下最强大的搜索命令为”find“。它的格式为”find <指定目录> <指定条件> <指定动作>“;比如使用find命令搜索在根目录下的所有interfaces文件所在位置,命令格式为”find / -name \'interfaces\'“使用locate搜索linux系统中的文件,它比find命令快。因为它查询的是数据库(/var/lib/locatedb),数据库包含本地所有的文件信息。使用locate命令在根目录下搜索interfaces文件的命令为”locate interfaces“
使用”whereis“命令可以搜索linux系统中的所有可执行文件即二进制文件。使用whereis命令搜索grep二进制文件的命令为”whereis grep“。 参考技术A Linux查找文件常用的命令有find、whereis、locate和which。
find
单词本身就是查找的意思,意思在指定根路径下找目标文件。
文件名查询:find path -name file
目标文件也可以使用*模糊查询,如:find / -name test*
which
which查找文件的方式与find略有不同,which从环境变量文件(/etc/profile)中的path目录中查找,且which找的都是可执行文件。
命令:which filename
PS:which不能使用*模糊查询
locate
这是区别以上两种的方式的一种查找文件方式,locate以一个数据库文件为基础查找。
Linux系统每天至少自动扫描一次文件,将结果保存到数据库,locate查的是数据库记录。
locate查询比find要快,但最新文件如果在数据库中没有记录,会查询不到,次是需要手动更新(updatedb)
whereis
与which类似查询可执行文件,whereis查询更多,会查找出相关的man文件
Linux系统下取IP地址的几种方法
Linux系统下取IP地址所在行的方法:
(1)、ifconfig eth0 | grep "inet addr"
inet addr:10.57.36.112 Bcast:10.57.36.255 Mask:255.255.255.0
注释:grep过滤包含"inet addr"字符串的内容
(2)、ifconfig eth0 | sed -n ‘2p‘
inet addr:10.57.36.112 Bcast:10.57.36.255 Mask:255.255.255.0
注释:sed -n ‘2p‘其中-n参数表示"取消默认打印",2p表示"打印第2行"
(3)、ifconfig eth0 | sed -n ‘/inet addr/p‘
inet addr:10.57.36.112 Bcast:10.57.36.255 Mask:255.255.255.0
(4)、ifconfig eth0 | sed -n ‘/Bcast/p‘
inet addr:10.57.36.112 Bcast:10.57.36.255 Mask:255.255.255.0
Linux系统下取IP地址的几种方法:
(1)、 ifconfig eth0 | grep "inet addr" | awk -F":" ‘{print $2}‘ | awk ‘{print $1}‘
10.57.36.112
(2)、ifconfig eth0 | grep "inet addr"| sed ‘s#^.*addr:##g‘ | sed ‘s#..Bc.*$##g‘
10.57.36.112
(3)、ifconfig eth0 | grep "inet addr"| cut -d: -f2| cut -d" " -f1
10.57.36.112
(4)、ifconfig eth0 | grep "inet addr" | awk -F"[: ]+" ‘{print $4}‘
10.57.36.112
说明:其中取IP地址所在行的方法可采用上述4种方法之一,然后再进行过滤、替换或截取即可获得IP!
本文出自 “Bruce_tan” 博客,请务必保留此出处http://380281.blog.51cto.com/370281/1758063
以上是关于Linux操作系统下查找文件的几种方法的主要内容,如果未能解决你的问题,请参考以下文章