Linux帮助——常用命令 Linux帮助——常用命令

摘要:本文主要学习了Linux系统中常用的一些命令。

uname命令

uname命令可以显示电脑以及操作系统的相关信息。

基本语法

1 uname [选项]

选项说明

1 -a:显示全部的信息。
2 -m:显示电脑类型。
3 -n:显示在网络上的主机名称。
4 -r:显示操作系统的发行编号。
5 -s:显示操作系统名称。
6 -v:显示操作系统的版本。

使用举例

1 [root@localhost ~]# uname -a
2 Linux localhost.localdomain 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
3 [root@localhost ~]#

lsof命令

lsof是用来查看当前系统文件的工具。

在Linux环境下,任何事物都以文件的形式存在,系统在后台为每个文件分配了文件描述符,该文件描述符提供了大量关于文件本身的信息。

基本语法

1 lsof [选项]

选项说明

 1 -a:使用AND逻辑,合并选项输出内容,默认使用OR逻辑。
 2 -d 文件号:列出占用该文件号的进程。
 3 +d 目录:列出目录下被打开的文件。
 4 +D 目录:递归列出目录下被打开的文件。
 5 -n 目录:列出使用NFS的文件。
 6 -c 进程名:列出以指定名称开头的进程打开的文件。
 7 -p 进程号:列出指定进程号打开的文件。
 8 -u 用户名或UID:列出指定用户打开的文件。
 9 -g GID:列出指定用户组打开的文件。
10 -i 条件:列出符合条件的进程。
11     4:表示IPv4网络文件。
12     6:表示IPv6网络文件。
13     协议:表示用了指定协议相关的文件。
14     :端口号:表示使用了指定端口。
15     @域名或IP地址:连接到指定域名或IP地址相关的文件。
16 -h:显示帮助信息。
17 -v:显示版本信息。

使用举例

无任何参数:

1 [root@localhost ~]# lsof | head -3
2 COMMAND    PID  TID    USER   FD      TYPE             DEVICE  SIZE/OFF       NODE NAME
3 systemd      1         root  cwd       DIR              253,0      4096        128 /
4 systemd      1         root  rtd       DIR              253,0      4096        128 /
5 [root@localhost ~]#

查找某个文件或目录相关的进程:

1 [root@localhost ~]# lsof /bin/bash
2 COMMAND  PID USER  FD   TYPE DEVICE SIZE/OFF     NODE NAME
3 bash    6992 root txt    REG  253,0   960376 33681892 /usr/bin/bash
4 bash    8355 root txt    REG  253,0   960376 33681892 /usr/bin/bash
5 [root@localhost ~]# 

查找所有的网络连接:

 1 [root@localhost ~]# lsof -i
 2 COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
 3 sshd     1472 root    3u  IPv4  18972      0t0  TCP *:ssh (LISTEN)
 4 sshd     1472 root    4u  IPv6  18974      0t0  TCP *:ssh (LISTEN)
 5 master   1568 root   13u  IPv4  19596      0t0  TCP localhost:smtp (LISTEN)
 6 master   1568 root   14u  IPv6  19597      0t0  TCP localhost:smtp (LISTEN)
 7 dhclient 8172 root    6u  IPv4  68532      0t0  UDP *:bootpc 
 8 dhclient 8172 root   20u  IPv4  69228      0t0  UDP *:52254 
 9 dhclient 8172 root   21u  IPv6  69230      0t0  UDP *:50913 
10 sshd     8351 root    3u  IPv4  70193      0t0  TCP 192.168.35.128:ssh->192.168.35.1:14505 (ESTABLISHED)
11 [root@localhost ~]# 

查找指定进程号并且是TCP方式连接的端口号是22的进程相关的信息:

1 [root@localhost ~]# lsof -a -p 8351 -i tcp:22
2 COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
3 sshd    8351 root    3u  IPv4  70193      0t0  TCP 192.168.35.128:ssh->192.168.35.1:14505 (ESTABLISHED)
4 [root@localhost ~]# 

结果说明

 1 COMMAND:表示进程的名称。
 2 PID:表示进程标识符。
 3 TID:表示线程标识符。
 4 USER:表示进程所有者。
 5 FD:表示文件描述符,应用程序通过文件描述符识别该文件。
 6 常用的值如下:
 7     cwd:current working directory。
 8     Lnn:library references (AIX)。
 9     err:FD information error (see NAME column)。
10     jld:jail directory (FreeBSD)。
11     ltx:shared library text (code and data)。
12     Mxx:hex memory-mapped type number xx.
13     m86:DOS Merge mapped file14     mem:memory-mapped file15     mmap:memory-mapped device。
16     pd:parent directory。
17     rtd:root directory。
18     tr:kernel trace file (OpenBSD)。
19     txt:program text (code and data)。
20     v86:VP/ix mapped file21 TYPE:表示文件类型。
22 常用的值如下:
23     IPv4:网际协议(IP)套接字。
24     BLK:块设备类型。
25     CHR:表示字符类型。
26     DIR:表示目录。
27     FIFO:先进先出(FIFO)队列。
28     LINK:简单链接文件。
29     UNIX:UNIX域套接字。
30 DEVICE:表示指定磁盘的名称。
31 SIZE/OFF:表示文件的大小。
32 NODE:表示索引节点,文件在磁盘上的标识。
33 NAME:表示打开文件的确切名称。