记录我常用的 shell 命令。

du

du -lh
du -sh *

进入占用空间比较大的文件夹,然后再使用 du -sh *查看根目录下每个文件夹的大小

查找大于10M的文件:

find / -type f -size +10000000c -exec du -sh {} \;

find

dos2unix

find -type f | xargs dos2unix -o

chmod

find ./ -type f -name "*.sh" | xargs -i chmod +x {}

mv

find . -type f -name "*.yaml.j2" | sed 's/\.yaml\.j2//1' | xargs -i mv {}.yaml.j2 {}.yaml
find . -type f -name "*.j2" | sed 's/\.j2//1' | xargs -i mv {}.j2 {}

将当前目录下,以.conf结尾的文件,更名为.conf.bak

find ./ -type f -name "*.conf" | sed 's/\.conf//1' |xargs -i mv {}.conf {}.conf.bak
find -type f  -name "*.repo"| sed 's/\.repo//1' | xargs -i mv {}.repo {}.repo.bak

pstree

查看进程tree

pstree [PID] [USER]

pstree <pid>
pstree root

sed

find . -type f -name "*.yaml" | xargs -i sed -i "s#abc#def#g" {}

fping

fping -aAD -l -e -s -f floatingip-list.txt
fping -aAD -l -e -s -i25 -f floatingip-list.txt 2>&1 >> floatingip.log
fping -aAD -l -e -s -f floatingip-list.txt 2>&1 >> floatingip.log
fping -aADmles -i25 -f floatingip-list.txt 2>&1 >> floatingip.log

grep

查看配置文件

grep '^[^#]' /etc/nova/nova.conf
grep '^[a-z]' /etc/filebeat/filebeat.yml
grep ERROR -rn *

过滤所有“#”开头行。

lsof

查看依赖:

lsof | grep libssl | awk '{print $1}'| sort | uniq

查看端口连接:

lsof -i:3306

查看文件使用:

lsof /var/lib/mysql/aria_log_control

iostat

iostat

iotop

iotop

iperf

iperf 是一个网络性能测试工具

查看多播:

yum install iperf -y
iperf -s -u -B 224.0.55.55 -i 1
iperf -c 224.0.55.55 -u -T 32 -t 3 -i 1

top

top
perf top

for

for pid in `ps -ef | grep rabbitmq | awk '{print $2}'`; do kill -9 $pid; done
for ip in ${JOB_IP[@]}; do
    rcmd root@$ip "source $CTRL_DIR/install.rc; gen_job_cert"
done

解析

ping
nslookup
dig
ping -b "224.0.1.103"

完毕。