Linux帮助——常用命令
摘要:本文主要学习了Linux系统中常用的一些命令。
uname命令
uname命令可以显示电脑以及操作系统的相关信息。
基本语法
uname [选项]
选项说明
-a:显示全部的信息。
-m:显示电脑类型。
-n:显示在网络上的主机名称。
-r:显示操作系统的发行编号。
-s:显示操作系统名称。
-v:显示操作系统的版本。
使用举例
[root@localhost ~]# uname -a
Linux localhost.localdomain 3.10.-.el7.x86_64 # SMP Thu Nov :: UTC x86_64 x86_64 x86_64 GNU/Linux
[root@localhost ~]#
lsof命令
lsof是用来查看当前系统文件的工具。
在Linux环境下,任何事物都以文件的形式存在,系统在后台为每个文件分配了文件描述符,该文件描述符提供了大量关于文件本身的信息。
基本语法
lsof [选项]
选项说明
-a:使用AND逻辑,合并选项输出内容,默认使用OR逻辑。
-d 文件号:列出占用该文件号的进程。
+d 目录:列出目录下被打开的文件。
+D 目录:递归列出目录下被打开的文件。
-n 目录:列出使用NFS的文件。
-c 进程名:列出以指定名称开头的进程打开的文件。
-p 进程号:列出指定进程号打开的文件。
-u 用户名或UID:列出指定用户打开的文件。
-g GID:列出指定用户组打开的文件。
-i 条件:列出符合条件的进程。
:表示IPv4网络文件。
:表示IPv6网络文件。
协议:表示用了指定协议相关的文件。
:端口号:表示使用了指定端口。
@域名或IP地址:连接到指定域名或IP地址相关的文件。
-h:显示帮助信息。
-v:显示版本信息。
使用举例
无任何参数:
[root@localhost ~]# lsof | head -
COMMAND PID TID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd root cwd DIR , /
systemd root rtd DIR , /
[root@localhost ~]#
查找某个文件或目录相关的进程:
[root@localhost ~]# lsof /bin/bash
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash root txt REG , /usr/bin/bash
bash root txt REG , /usr/bin/bash
[root@localhost ~]#
查找所有的网络连接:
[root@localhost ~]# lsof -i
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd root 3u IPv4 0t0 TCP *:ssh (LISTEN)
sshd root 4u IPv6 0t0 TCP *:ssh (LISTEN)
master root 13u IPv4 0t0 TCP localhost:smtp (LISTEN)
master root 14u IPv6 0t0 TCP localhost:smtp (LISTEN)
dhclient root 6u IPv4 0t0 UDP *:bootpc
dhclient root 20u IPv4 0t0 UDP *:
dhclient root 21u IPv6 0t0 UDP *:
sshd root 3u IPv4 0t0 TCP 192.168.35.128:ssh->192.168.35.1: (ESTABLISHED)
[root@localhost ~]#
查找指定进程号并且是TCP方式连接的端口号是22的进程相关的信息:
[root@localhost ~]# lsof -a -p -i tcp:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd root 3u IPv4 0t0 TCP 192.168.35.128:ssh->192.168.35.1: (ESTABLISHED)
[root@localhost ~]#
结果说明
COMMAND:表示进程的名称。
PID:表示进程标识符。
TID:表示线程标识符。
USER:表示进程所有者。
FD:表示文件描述符,应用程序通过文件描述符识别该文件。
常用的值如下:
cwd:current working directory。
Lnn:library references (AIX)。
err:FD information error (see NAME column)。
jld:jail directory (FreeBSD)。
ltx:shared library text (code and data)。
Mxx:hex memory-mapped type number xx.
m86:DOS Merge mapped file。
mem:memory-mapped file。
mmap:memory-mapped device。
pd:parent directory。
rtd:root directory。
tr:kernel trace file (OpenBSD)。
txt:program text (code and data)。
v86:VP/ix mapped file。
TYPE:表示文件类型。
常用的值如下:
IPv4:网际协议(IP)套接字。
BLK:块设备类型。
CHR:表示字符类型。
DIR:表示目录。
FIFO:先进先出(FIFO)队列。
LINK:简单链接文件。
UNIX:UNIX域套接字。
DEVICE:表示指定磁盘的名称。
SIZE/OFF:表示文件的大小。
NODE:表示索引节点,文件在磁盘上的标识。
NAME:表示打开文件的确切名称。