ls命令

  • 语法:ls 【选项】 【目录】
  • 常用参数选项:
1
2
3
4
5
6
7
8
9
10
11
1. -a:列出目录下的所有文件,包含以.开头的隐藏文件。
2. -A:显示除隐藏文件“.”和“..”以外的所有文件列表。
3. -C:多列显示输出结果。
4. -l:列出文件的详细信息,单列显示。
5. -F:在每个输出项后添加文件的类型标识符。*表示具有可执行权限的普通文件;/表示目录;@表示符号链接;|表示命令管道FIFO;=表示sockets套接字;普通文件不输出任何标识符。
6. -t:根据文件和目录的修改时间排序。
7. -k:以KB(千字节)为单位显示文件大小。
8. -m:用“,”号区隔每个文件和目录的名称。
9. -r:以文件名倒序排列并输出目录内容列表。
10. -L:列出文件的链接名。
11. -R:将目录下所有的子目录的文件都列出来。

端口号

  1. netstat
  • 语法:netstat 【参数】
  • 常用参数选项:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
-a / --all:列出所有活动(active)的连接.
-A<网络类型>:列出该网络类型连线中的相关地址;使用rmsock命令可根据该地址查到进程的PID。
-n / --numeric:直接使用ip地址而不是域名显示地址.
-t / --tcp:列出TCP传输协议的连接.
-u / --udp:列出UDP传输协议的连接.
-l / --listening:列出监控中的服务器的Socket。
-p / --programs:列出正在使用Socket的PID和进程名称。
-c / --continuous:持续列出网络状态。
-C / --cache:列出路由器配置的快取信息。
-e / --extend:列出网络其他相关信息。
-M / --masquerade:列出伪装的网络连接。
-i :显示网卡列表。
-V / --version:显示版本信息。
-w / --raw:显示RAW传输协议的连接情况。
-x / --unix:此参数和"-A unix"参数显示结果相同。
--ip / --inet:此参数和"-A inet"参数显示结果相同。
  1. Linux系统查看端口号被占用的方法
1
2
3
方法一:lsof -i:端口号。
方法二:首先用 netstat -anp|grep 端口号 。
方法三:netstat -tunlp | grep 端口号。
  1. AIX系统查看端口号被占用的方法

    • netstat -an 查看整体情况。
    • 由端口号查找具体的进程:
      1. netstat查看端口信息 : netstat -Aan|grep 11000,
        终端会输出如下信息:f2000522027cbb0 tcp 0 0 158.220.252.214.501 172.17.252.8.6666 ESTABLISHED
      2. 如果是TCP连接,则使用rmsock f2000522027cbb0 tcpcb;如果是UDP连接,则使用:
        rmsock f2000522027cbb0 inpcb。得到输出结果:The socket f2000522027cbb0 is being held by proccess 21736452 (flow).
      3. 根据第二步中的PID(21736452)查询具体的程序。ps -ef|grep 21736452 .
    • 由PID查询使用的端口号:Linux中可以使用netstat -anp 中的选项p来查询;AIX中的查询方法如下:
    1
    netstat -Aan | awk '{print $1}' | while read line; do echo "$line `rmsock $line tcpcb | awk '{print $(NF-1)}'`";done >> a.log 2>&1

grep常用法示例:

在grep命令中,输入字符串参数时,最好将其用双引号括起来。

  • 在所有文件中查询 test :grep “test” * 。
  • 在两个文件中查询:grep “test” file1 file2 。
  • 在多个文件中查找test 并输出文件名称:grep “test” -l file1 file2 file3 file4
  • 查看file中包含“test”的所有行并显示出来:grep “test” file 。
  • 查看file中包含“test”的行并只显示总行数:grep -c “test” file 。
  • 查看file中包含“test”的所有行显示出来并显示出其行号:grep -n “test” file 。
  • 查看file中不包含“test”的所有行显示出来:grep -v “test” file 。
  • 查看file中包含“test”(忽略大小写)的所有行:grep -i “test” file 。
  • 匹配多个字符串:grep -E ‘aaa|bbb’ file (匹配aaa或者bbb出现的行) 。
  • 同时满足 test1 test2 test3:grep test1 file | grep test2 |grep test3
  • 匹配空行:grep ‘^$’ file 。
  • 匹配IP地址:grep ‘[0-9]{3}.[0-9]{3}.[0-9]{3}‘ file
  • 与管道命令搭配使用:ps -ef|grep 11001 。
  • grep与正则表达式的一些用法:
1
2
3
4
5
6
7
8
grep '^[^test]' file:不匹配行首为test的
grep 'test[12]' file: 匹配test1或者test2
grep '[Tt]est' file:匹配Test或者test
grep 'T...E' file:匹配T后边三个字符然后E的
grep 't.\{2\}e' file:匹配t后边2个字符然后e的
grep '[A-Z][A-Z]...e' file :头2个字符为大写字母,以e结尾,中间3个任意字符
grep 'x..201[7,8]' file : 匹配x后边2个任意字符,以2017或者2018结尾的。
grep 't\{3,\}' file :匹配t至少出现3次

head和tail的常用法示例:

  • head常见用法:
1
2
3
4
head -n 10 file :查看file中的前十行
head -c 20 file :查看file中的前20个字节
head -n -10 file :查看file中除去后10行之外的内容
head -c -20 file :查看file中除去后20个字节之外的内容
  • tail常见用法:
1
2
3
tail -f file :动态显示file中的内容在屏幕上,默认10行
tail -n 10 file :显示file文件中的后10行
tail -r -n 10 file :逆序显示file文件中的后10行