1, top10k统计
grep -a AAAA *.log | awk '{if($12=1234) {print $4}}' | sort | uniq -c | sort -nr | head -10000 > ./top10k

2, shell下自动完成历史命令
Ctrl+r

3, tcpdump抓包
tcpdump -i eth1 tcp port <端口号> and host <ip地址> -XX -tttt -nnnn -s 0

4, 不影响程序运行的情况下产生core文件
gcore pid

5,测两台机器间的网速
5.1,未精确验证)
机器1执行:
nc -k -l 7777 > /dev/null
机器2执行:
time dd if=/dev/zero bs=1024 count=1024000 | nc 机器1 7777
5.2,精确
vnstat -i eth0 -tr

6,windows下的zip中包含中文文件名或目录名时,解压后乱码
先按windows下的gbk编码解压:
LANG=zh_CN.GBK 7za x windows_file.zip
再转换文件名为linux下的utf-8编码:
convmv -r -f cp936 -t utf8 --notest --nosmart *

7,ubuntu下进入root shell:
sudo -s

8,开启关闭某个端口上的网络通信
iptables -I <INPUT|OUTPUT> -i eth0 -p <tcp|udp...> --dport <端口号> -j <ACCEPT|DROP>

9,命令输入多行文本
cat [> file] <<EOF
EOF

10,替换文件中的内容
sed -in-place -e 's/old/new/g' test.txt

11,crontab命令执行失败
首先是crontab执行时的环境变量设置得比较少,确保命令不依赖环境变量;
其次如果命令里用到了百分号,需要转义:`date --date="3 days ago" "+\%Y\%m\%d"`