您的位置:首页 > 运维架构 > Linux

Linux实用命令

2013-12-07 00:15 253 查看

基本命令

1.查看OS版本

head -n 1 /etc/issue
2.查看计算机名

hostname
 3.查看环境变量资源

env
4.列出加载的内核模块

lsmod
5.查看/tmp目录大小

du -sh /tmp
6.查看各分区使用情况

df -h
7.查看系统运行时间、用户数、负载

uptime
8.查看挂载的分区状态

mount | column -t
9.查看所有分区

fdisk -l
10.查看所有交换分区

swapon -s
11.查看启动时IDE设备检测状况

dmesg | grep IDE
12.查看路由表

route -n
13.查看所有监听端口

netstat -lntp
14.查看所有已经建立的链接

netstat -antp
15.查看网络统计信息

netstat -s
16.查看防火墙设置

iptables --list
17.查看活动用户

w

18.查看用户登录日志

last

19.查看系统所有用户

cut -d: -f1 /etc/passwd

20.查看系统所有分组

cut -d: -f1 /etc/group

21.查看当前用户的计划任务服务

crontab -l

22.列出所有启动的系统服务

chkconfig --list | grep on

23.查看进程树

ps aufx

pstree

24.获取进程总数

ps aux | wc -l
25.获取虚拟内存信息

vmstat
26.内核日志

dmesg
27.已经打开的句柄数

lsof | wc -l
28.网络错误

netstat -i
cat /proc/net/dev
29.CPU数量

cat /proc/cpuinfo | grep -c processor
30.CPU负载

cat /proc/loadavg
31.查看异常进程

top -id 1
32.同步网络时间

ntpdate asia.pool.ntp.org
33.统计一个目录中的目录个数

ls -l | awk '/^d/' | wc -l
34.统计一个目录中的文件个数

ls -l | awk '/^-/' | wc -l
35.统计一个目录中的全部文件数

find ./ -type f -print | wc -l
36.统计一个目录中的全部子目录数

find ./ -type d -print | wc -l
37.机器支持的最大内存
dmidecode |grep -P "Maximum\s+Capacity"
38.获取进程运行所在的CPU
ps -eo pid,args,psr

39.查看硬件制造商

dmidecode -s system-product-name

40.查看当前系统的共享内存页面

ipcs -m

  

组合命令

1.查看进程,按内存降序输出

ps -e -o "%C : %p : %z :%a" | sort -k 5 -nr

2.杀死80端口进程

lsof -i :80|grep -v "PID"|awk '{print "kill -9",$2}'| sh

3.清理僵尸进程

ps -eal | awk '{ if ($2 == "Z") {print $4}}' | kill -9

4.查看80端口进程,并排序

netstat -an -t | grep ":80" | grep ESTABLISHED | awk '{printf "%s %s\n",$5,$6}' | sort

5.获取IP地址

ifconfig eth0 | grep "inet addr:" | awk '{print $2}' | cut -c 6-

ifconfig | grep 'inet addr:' | grep -v '127.0.0.1' | cut -d: -f 2 | awk '{print $1}'

6.查看tcp并发连接数及其连接状态

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

7.查看网络连接数

netstat -an | grep -E "^(tcp)" | cut -c 68- | sort | uniq -c | sort -n

8.获取内存大小

free -m | grep "Mem" | awk '{print $2}'

9.删除当前目录中零字节文件

find . -type f -size 0  -exec rm -rf {} \;

find . -type f -size 0 -delete

注:\;与{}之间有空格

10.统计服务器中jpg文件的总大小

find / -name *.jpg -exec wc -c {} \; | awk '{printf $1}' | awk '{a+=$1} END {printf a}'

11.统计当前目录下,大于100M的文件的个数

find . -size +100M -type f | tee file_list | wc -l

12.统计当前目录下的文件,以M为单位,按大小倒序输出

find . -type f | xargs ls -s | sort -rn | awk '{size=$1/1024; printf("%dMb %s\n", size,$2);}' | head

13.去掉第一列

awk '{for(i=2;i<=NF;i++) if(i!=NF){printf $i" "}else{print $i} }' filelist

注:filelist是需要处理的文件列表

14.日志的查看与搜索

tail -f -n 20 /var/log/messages

grep -i error /var/log/messages

egrep -i 'error|warn' /var/log/messages

15.网络抓包,输出摘要信息到tmp.txt文件;;然后检查IP的重复数并从小到大排序

tcpdump -c 100 > tmp.txt

less tmp.txt | awk {'printf $3"\n"'} | cut -d. -f 1-4 | sort | uniq -c | awk {'printf $1" "$2"\n"'} | sort -n -t\  -k1

 

关于命令

上面的有些命令可能没有实际的应用价值,但是,通过这些命令我们可以更好地熟悉一些命令的用法。关于find、grep、awk、tcpdump、xargs、wc、netstat、cut、sed、wc等有些复杂但个人认为比较实用的有价值的命令,将来会在单独的博文中给出比较详细的使用说明。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux 命令行 find wc grep