Skip to content

Linux常用命令

系统实时进程状态: top

top命令可以实时地显示系统的进程状态,如CPU占用率、内存占用率、运行时间等

  • -u :只显示指定用户的进程
  • -p :只显示指定进程ID的进程
  • -c:显示完整的命令行
  • -d :设置刷新间隔,单位为秒

示例

每隔5秒刷新信息

sh
top -d 5

内存使用情况:free

free命令可以显示系统的内存使用情况,包括物理内存、交换分区、缓冲区和缓存等

  • -h:以人类可读的格式显示信息,如KB、MB、GB等
  • -m:以MB为单位显示信息
  • -g:以GB为单位显示信息
  • -t:显示总计信息

示例

查看内存使用MB单位

sh
free -m

磁盘使用情况: df

df命令可以显示系统的磁盘使用情况,包括总容量、已用空间、可用空间、使用百分比等

  • -h:以人类可读的格式显示信息,如KB、MB、GB等
  • -m:以MB为单位显示信息
  • -g:以GB为单位显示信息
  • -T:显示文件系统类型
  • -a:显示所有文件系统,包括特殊的
  • < directory >:只显示指定目录所在的文件系统

示例

sh
df -hT

日志查看:tail

命令格式: tail [必要参数] [选择参数] [文件]

  • -f 循环读取
  • -q 不显示处理信息
  • -v 显示详细的处理信息
  • -c<数目> 显示的字节数
  • -n<行数> 显示行数
  • -q 从不输出给出文件名的首部
  • -s 与-f合用,表示在每次反复的间隔休眠S秒

示例

循环实时查看最后100行记录(最常用的)

sh
tail -fn 100 catalina.out

查看登陆日志: last

last可以查看所有用户的登陆信息

  • -num 显示最近num次登陆信息

lastlog可以查看所有用户的最后一次登陆信息

示例

查看最近10次登陆信息

sh
last -10

网络相关信息:netstat

netstat可以显示活动的TCP\UDP连接、监听的端口、路由表、接口统计、多播成员等

  • -a:显示所有活动的TCP连接和监听的TCP和UDP端口
  • -n:显示数字形式的地址和端口号,而不是尝试解析主机名。
  • -p:只显示指定协议的连接。协议可以是tcp, udp, tcpv6, 或 udpv6。如果这个参数和-s一起使用来显示协议统计信息,协议可以是tcp, udp, icmp, ip, tcpv6, udpv6, icmpv6, 或 ipv6。
  • -r:显示IP路由表。这相当于route print命令。
  • -t:显示当前tcp连接状态。
  • < interval>:每隔指定的秒数重新显示选定的信息。按CTRL+C停止重新显示。如果省略这个参数,命令只会打印一次选定的信息。

示例

查看本机监听端口

sh
netstat -tln

查看登陆失败记录

快捷命令

sh
cat /var/log/secure | awk '/Failed/{print $(NF-3)}' | sort | uniq -c | awk '{print $2" = "$1;}'

Released under the MIT License.