linux下的几个查找命令的区别
find
创新互联建站是一家朝气蓬勃的网站建设公司。公司专注于为企业提供信息化建设解决方案。从事网站开发,网站制作,网站设计,网站模板,微信公众号开发,软件开发,微信小程序,10余年建站对成都不锈钢雕塑等多个行业,拥有多年建站经验。
find是最常见和最强大的查找命令,也是我们用的最多的命令
locate
locate要比find快得多,因为它不搜索具体目录,而是搜索一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息,linux系统会自动 创建这个数据库,并且第天自动更新一次,所以使用locate查不到最新变动过的文件,为了避免这种情况,在使用locate之前,使用updatedb命令,手动更新数据库
whereis
这个命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b),man说明文件(参数-m)和源代码文件(-s),如果活力参数,则返回所有信息
which
这个命令是在PATH变量的指定路径中,搜索某个系统命令的位置,并且返回第一个搜索结果,也就是说,使用which命令,其实就是查看某个系统命令是否存在,以及执行命令的位置
type
这个命令,不算查找命令,是用来区分某个命令是否为shell自带的,还是由shell外部的独立二进制文件提供,如果一个命令是外部命令,那么使用-p参数,会显示命令的路径相当于which命令
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“。
linux查看运行的端口命令
一、使用 netstat 检查端口
netstat 是一个命令行工具,可以提供有关网络连接的信息。
要列出正在侦听的所有 TCP 或 UDP 端口,包括使用端口和套接字状态的服务,请使用以下命令:
netstat -tunlp
此命令中使用的选项具有以下含义:
-t - 显示 TCP 端口。
-u - 显示 UDP 端口。
-n - 显示数字地址而不是主机名。
-l - 仅显示侦听端口。
-p - 显示进程的 PID 和名称。仅当您以 root 或 sudo 用户身份运行命令时,才会显示此信息。
查询指定端口通过grep过滤:
netstat -tnlp | grep :80
二、使用 ss 检查端口
ss 是新的 netstat,命令选项大致相同。它缺少一些 netstat 功能,但暴露了更多的 TCP 状态,而且速度稍快。《Linux就该这么学》 一起学习linux
使用示例:ss -tunlp
三、使用 lsof 检查端口
lsof 是一个功能强大的命令行实用程序,它提供有关进程打开的文件的信息。
在 Linux 中,一切都是文件,可以将套接字视为写入网络的文件。
要使用 lsof 获取所有侦听 TCP 端口的列表:
lsof -nP -iTCP -sTCP:LISTEN
使用的选项如下:
-n - 不要将端口号转换为端口名称。
-p - 不要解析主机名,显示数字地址。
-iTCP -sTCP:LISTEN - 仅显示 TCP 协议状态为 LISTEN 的网络文件。
要查找正在侦听特定端口(例如 3306)的进程,请使用以下命令:
sudo lsof -nP -iTCP:3306 -sTCP:LISTEN
当前标题:Linux查找执行命令 linux查找可执行文件命令
文章链接:http://scgulin.cn/article/dooidjs.html