文章目录

  • 查看系统版本
  • 查看CPU信息
  • 1. 查看/proc/cpuinfo文件
  • 2. lscpu命令
  • 3. top/htop命令
  • 4. nproc命令
  • 5. getconf命令
  • 查看进程
  • 查看端口
  • 关闭进程
  • 关机/重启
  • 任务后台运行
  • 内存CPU消耗
  • find查找命令
  • 文件/目录统计
  • du命令
  • 连接数
  • 线程数


查看系统版本

# 查看当前操作系统内核信息
cat /etc/redhat-release或uname -a

# 查看当前操作系统版本信息
cat /proc/version

# 查看Linux版本
lsb_release -a

查看CPU信息

我们可以使用以下5中方式来查看Linux主机CPU相关信息,比如CPU核心数、CPU型号主频、缓存等。

1. 查看/proc/cpuinfo文件

# 可以查看所有cpu的详细信息
cat /proc/cpuinfo

# 查看CPU线程数
grep -c processor /proc/cpuinfo

linux cpu 架构 linux cpu相关命令_linux cpu 架构

2. lscpu命令

直接运行lscpu命令

linux cpu 架构 linux cpu相关命令_linux cpu 架构_02

3. top/htop命令

命令行直接执行top命令,控制台输出信息之后,按数字键“1”。

linux cpu 架构 linux cpu相关命令_Linux_03


命令行直接执行htop:

linux cpu 架构 linux cpu相关命令_CPU_04

4. nproc命令

# 直接执行命令,显示CPU核心数
nproc --all

5. getconf命令

# 直接执行命令,显示CPU核心数
getconf _NPROCESSORS_ONLN

查看进程

# 查看进程打开的文件
lsof -p pid

# 查看进程的tcp连接信息
lsof -p pid | grep tcp

# 查看进程被哪些系统调用
sudo strace -p pid

查看端口

# 查看Linux中监听的TCP端口
netstat -nltp

# 查看指定端口信息
lsof -i:8080 或 netstat -anp | grep 8080

关闭进程

ps -ef | grep 关键字 | awk ‘{print $2}’ | xargs kill -9
  • awk ‘{print $@}’:是指第二列的内容,是运行的程序ID。
  • xargs:通过xargs传递给kill -9,也就是发给这个运行的程序一个信号,让它关闭。

关机/重启

shutdown -h now	
reboot

任务后台运行

nohup command > out.file 2>&1 &

nohup: no hung up的意思。
&:表示不要让程序霸占交互命令行,而是应该在后台运行。
1:表示文件描述符1,表示标准输出。
2:表示文件描述符2,表示标准错误输出。
2>&1:表示标准输出和错误输出合并了,合并到out.file里。

内存CPU消耗

ps -aux | sort -rnk 4 | head -20	
ps -aux | sort -rnk 3 | head -20
ps -aux | sort -nk +4 | tail

find查找命令

find . -name "*.sh" | xargs grep lqwork.jar  //查找当前目录下以.sh结尾的文件中,包含"lqwork.jar"字符串的文件
find / -type f -size +500M	
find / -name *.conf -type f -print | xargs file
find / -name *.conf -type f -print | xargs tar cjf test.tar.gz	//找出/目录下以.conf结尾的文件,并进行文件分类或打包
find /bigdata/hadoop/* -name 'a*.jar' -exec cp {} /usr/lib/impala/lib/  \;	//查询符合条件的文件并拷贝到指定目录下

文件/目录统计

ls -l | grep "^-" | wc -l	统计当前文件夹下文件的个数
ls -l | grep "^d" | wc -l	统计当前文件夹下目录的个数
ls -lR | grep "^-" | wc -l	统计当前文件夹下文件的个数,包括子文件夹里的
ls -lR | grep "^d" | wc -l	统计当前文件夹下目录的个数,包括子文件夹里的

du命令

# 列出当前目录下最大的10个文件
du -s * | sort -n | tail

连接数

问题:1.2.3.4长度sshd的监听端口是22,如何统计1.2.3.4的sshd服务各种连接状态
的连接数?

常见方法:

# 方法一
netstat -n | grep 1.2.3.4:22| awk '/^tcp/ {++S[$NF]} END {for(a in S) print a,  S[a]}'

# 方法二
netstat -Inpta | grep ssh | egrep "TIME_WAIT | CLOSE_WAIT | ESTABLISHED"

线程数

问题:查询服务器运行服务的总线程数,当机器线程数超过报警阈值时,能快速查出相关
进程与线程信息。

常用方法:

ps -eLf | wc -l
pstree -p | wc -l