2. Linux常用命令
2019-04-01 本文已影响0人
fcbhank
此部分主要考察java从业者的线上问题排查能力,现基于CentOS release 6.5 (Final)简要介绍如下6个命令[1],期间用poem文件举例。推荐查询linux命令的两个网址Linux 命令大全 | 菜鸟教程和Linux命令大全(手册)。
cat poem
******结果******
1 --------------------------
2 The Noon Balloon
3 Will be leaving soon
4 For the sun or the moon.
5 And wherever it goes,
6 It will get there too soon.
7 --------------------------
-
awk命令:好用的数据处理工具(默认分隔符:空格或tab)
sed常用作一整行的处理,awk则倾向于将一行分成数个“字段”处理,适合小型数据处理。
语法:awk '条件类型1 {动作1} 条件类型2 {动作2}...' filename
e.g. 输出poem中第2行至第6行的第2列与第4列内容以及第1列乘10结果,中间以#符分割(提示:NR为当前处理行的行号)
awk 'NR>=2 && NR<=6 {print $2"#"$4"#"$1*10}' poem
******结果******
The#Balloon#20
Will#leaving#30
For#sun#40
And#it#50
It#get#60
-
top命令:动态查看进程变化
语法:top [-d 数字] | top [-bnp]
-d 页面刷新时间间隔描述,本次所用系统默认3秒
-b 以批次的形式展现
-n 执行几次后停止
-p 查看进程号为p的进程动态
e.g. 每隔3秒批次查看进程号为1673的进程3次,然后结束。
top -d 3 -b -n 3 -p 1673

-
netstat命令:跟踪网络
语法:netstat -[atunlp]
-a 显示系统所有连接、监听、Socket
-t 列出tcp网络数据包的数据
-u 列出udp网络数据包的数据
-n 不列出进程的服务名称,以端口号显示
-l 列出正在监听的服务
-p 列出进程号为PID的进程
e.g. 累出目前系统已经新建的网络连接与Unix Socket状态
netstat
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 1 node4:42278 node1:intu-ec-svcdisc SYN_SENT
tcp 0 1 node4:59492 node2:intu-ec-svcdisc SYN_SENT
tcp 0 0 node4:ssh 192.168.226.1:56589 ESTABLISHED
tcp 0 132 node4:ssh 192.168.226.1:53859 ESTABLISHED
tcp 0 0 node4:8031 node4:32834 ESTABLISHED
tcp 0 1 node4:44307 node1:eforward SYN_SENT
tcp 0 0 node4:32834 node4:8031 ESTABLISHED
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags Type State I-Node Path
unix 14 [ ] DGRAM 11626 /dev/log
unix 2 [ ] DGRAM 9228 @/org/kernel/udev/udevd
unix 2 [ ] DGRAM 12430 @/org/freedesktop/hal/udev_event
…(省略)…
-
grep命令:分析一行数据,后边常跟正则表达式
语法:grep [-acinv] [--color=auto] '查找字符串' filename
-a 将binary文件以text文件方式查找数据
-c 计算找到'查找字符串'的次数
-i 忽略大小写的不同
-n 输出行号
-v 输出没有'查找字符串'的那一行
e.g. 输出poem包含'l'字符的几行,顺带输出行号
grep -n 'l' poem
2:2 The Noon Balloon
3:3 Will be leaving soon
6:6 It will get there too soon.
tail -n 2 poem
******结果******
6 It will get there too soon.
7 --------------------------
-
鸟哥. 鸟哥的Linux私房菜[M]. 北京: 人民邮电出版社, 2016. ↩