常用的linux命令

1、清空文件
# > file
# :> file
# echo “” > file
# cat /dev/null > file
2、回退到上次使用的目录
cd -
3、压缩,去掉不需要的目录
# tar czvf my_back.tar.gz backs/  –exclude=website/logs/*
4、查看系统tcp连接状态
# netstat -n | awk ‘/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}’
5、内存排序
# ps -eo “%C : %p : %z : %a”|sort -k5 -nr
6、删除当前目录index.txt以外的文件,ksh环境
# ksh
# rm -f !(index.txt)
# exit
7、手动释放内存
#sync
#echo 3 > /proc/sys/vm/drop_caches
8、按cpu利用率从大到小排列
# ps -e -o “%C : %p : %z : %a”|sort -nr
9、杀进程
[root@localhost ~]# cat kill_process.sh
#!/bin/sh
#for kill process
ps -ef |grep $1|grep -v grep |awk ‘{print $2}’|xargs kill -9
#sh -x ./kill_process.sh php
#pgrep http |xargs kill -9
10、快速格式化磁盘
# echo -e “o\nn\np\n1\n\n\nw\n” | fdisk /dev/sdX
11、显示系统版本
# lsb_release -d
12、快速备份文件file为file.bak
# cp file{,.bak}
13、覆盖文件,禁用alias项
# \cp file file
#yes|cp file file
14、显示当前目录下的目录
# ls -d */
# find . -maxdepth 1 -type d
15、删除当前目录和子目录的.svn
# find . -name “.svn” -type d -exec rm -fr {} \;
16、同步本机的log目录到远程服务器
# rsync  -vzrtopg –progress –stats -e‘ssh’ /md2/log/201204/20/  [email protected]:/log/201204/20/
17、列求和
awk ‘BEGIN{sum=0}{sum+=$1}END{print sum}’
18、修改密码
echo “user:password”|chpasswd
或者
echo “password” | passwd –stdin user
19、从组中删除用户
gpasswd -d user GROUP
20、找出当前目录以下除某些目录以外的文件
find . -wholename ‘./src/log’ -prune -o -print
find . -path ‘./log’ -prune -o -print
ls -R -I ‘./log’
21、检测网站连通环节时长
curl -o /dev/null -s -w %{time_namelookup}’\n’%{time_connect}’\n’%{time_starttransfer}’\n’%{size_request}’\n’%{time_total}’\n’ http://www.phpdba.com
time_namelookup 域名解析时间
time_connect 连接时间
time_starttransfer 开始传输时间
time_total 总时间
22、修改网卡速率和模式
ethtool -s eth1 speed 1000 duplex full autoneg on
23、查看文件完整路径
readlink -f  filename
24、查看链接header信息
curl -I http://www.phpdba.com
25、linux 下dig命令使用
# dig 最基本的用法
dig @8.8.8.8 www.phpdba.com
# 用 dig 查看 zone 数据传输
dig @8.8.8.8 blog.phpdba.com. AXFR
# 用 dig 查看反向解析
dig -x 50.62.240.1 @8.8.8.8
# 查找一个域的授权 dns 服务器
dig phpdba.com. +nssearch
# 从根服务器开始追踪一个域名的解析过程
dig phpdba.com +trace
#批处理模式,-f后跟一个文件,文件内为要查询的内容,每行一个查询
例如:
dig -f host.list
host.list内容如下:
phpdba.com mx
baidu.com mx
26、清楚历史记录
histroy -c
27、服务器各项状态
dstat –top-io –top-cpu -cdlmntav
28、查看服务器监听端口
netstat -lntp
#查看所有已经建立的连接
netstat -antp
29、批量去掉BOM(BOM(Byte Order Mark)是Windows下的东东,Linux下根本就不需要它)
grep -rIlo $’^\xEF\xBB\xBF’ . | xargs sed –in-place -e ‘s/\xef\xbb\xbf//’
30、cpu
#个数
cat /proc/cpuinfo |grep ‘physical id’|awk -F’:’ ‘{print $2}’|sort|uniq -c|wc -l
#核数
cat /proc/cpuinfo |grep -c processor
31、查看路由表
route -n
32、查看用户登陆日志
last
33、查看系统所有用户
cut -d: -f1 /etc/passwd
34、查看系统运行时间
uptime
35、查看内存
#总量
grep MemTotal /proc/meminfo
#空闲量
grep MemFree /proc/meminfo
36、查看分区使用情况
df -h
37、查看目录大小
du -sh <目录名>
38、查看环境变量
env
39、列出加载内核模块
lsmod
40、查看所以pci设备
lspci -tv
41、查看usb设备
lsusb -tv
42、查看计算机名
hostname
43、查看内核/操作系统/cpu信息
uname -a
44、查看操作系统版本
head -n 1 /etc/issue
45、列出所有启动系统服务
chkconfig –list|grep on
46、查看所有安排的软件包
rpm -qa
47、查看apache日志访问情况
apachetop -f access.log
48、查看etho网卡流量情况
iftop -i eth0
49、每隔一秒输出特定进程信息
while :; do ps -eo pid,ni,pri,pcpu,psr,comm | grep ‘xxxx’; sleep 1; done
50、字符模式输出某目录下以discuz_开头的子目录名称
ll -d var/discuz_* |awk ‘{print $9}’|awk -F’/’ ‘{printf”%s “,$2}’
51、统计.svn目录多大
find . -type d -name ‘.svn’|xargs du -b|awk ‘{sum+=$1;} END {print sum/1024/1024}’
52、查询服务连接数
netstat -na | awk ‘/^tcp/{s=split($5,N,”:”);A[N[s-1]]++} END{ for (k in A) print k,A[k]}’
or
netstat -na|awk ‘/^tcp/{print $5}’|grep -v -E ’0.0.0.0|ffff’|awk -F’:’ ‘{print $1}’|awk ‘{++sate[$1]}END{for(key in sate)print key,”\t”,sate[key]}’
or
netstat -na | awk ‘/^tcp/{print $5}’ | grep -v -E ’0.0.0.0|ffff ‘ |cut -d: -f 1 | sort -n |uniq -c
53、统计top10常用命令
history | awk ‘{CMD[$2]++;count++;} END { for (a in CMD )print CMD[ a ]” ” CMD[ a ]/count*100 “% ” a }’ | grep -v “./” | column -c3 -s ” ” -t |sort -nr | nl | head -n10
54、实时查看某进程
watch -n 1 -d ‘pgrep xxx|wc -l’
55、查看某用户(比如:apache)内存使用情况及同时请求数
内存使用:ps -U apache u|awk ‘{S+=$6}END{print S}’
请求数:netstat -na|grep :80|wc -l
56、获取代理服务器与源服务器之间请求链接
tcpdump -s 0 -w – host 21.31.14.42 and dst port 80|strings|grep -i -E ‘GET|POST’
57、统计最近访问10000条,安装响应时间排序
tail -n 10000 baby.phpdba.com-access.0715|awk -F’”‘ ‘{time=substr($1,index($1,”[“),30);print $3″ “$2″ “time}’|sort -k 3 -rn|less
58、杀死僵尸进程
ps -e -o ppid,stat | grep Z | cut -d” ” -f2 | xargs kill -9
kill -HUP `ps -A -ostat,ppid | grep -e ’^[Zz]‘ | awk ’{print $2}’`
59、wget抓取
wget -m -p -np -k -l 3 http://www.phpdba.com/book
60、统计目录大小
du -s Folder|awk ‘{print $1}

你可能感兴趣的:(常用的linux命令)