1、搜索曾经用过的命令
Ctrl + r 会提示:(reverse-i-search)`': 进行模式匹配即可
History | grep 进行过滤
2、查看某端口ip连接情况,比如3306
netstat -ano | grep 3306 | awk '{print $5}' | awk -F ':' '{print $1}' | sort | uniq -c
3、查看某yum源,rpm包具体名称:
yum list | grep percona
4、只下载rpm 包,不进行安装
yum -y install yum-utilsyumdownloader rpmfile
5、调试某脚本:
sh -x scriptfile
6、SSH debug 模式:
ssh -vvv user@ip_address
7、一次创建多个目录:
mkdir -p /home/user/{test,test1,test2}
8、解压文件至新目录:
tar zxvf -C new_dir package.tar.gzunzip package_name.zip -d dir_name
9、删除大小大于30M的文件:
find dir -size +30M | xargs -i rm -f '{}'
10、重复运行某脚本(某命令),显示其输出(缺省是2秒一次):
watch ps -ef
11、grep匹配整个字段
grep -w 'name' filenamegrep '\bname\b' filename
12、查看某进程使用文件句柄个数:
lsof -n | awk '{print $2}' | sort | uniq -c | grep pid
13、内核从Linux 2.6.32 开始,在线调整最大process,无需重启应用:
echo -n "Max processes=204800:204800" > /proc/`pid`/limits
14、刷写memcache 缓存:
echo "flush_all" | nc 127.0.0.1 11210
15、当Ctrl + c不好使时:
Ctrl + \
16、在bash历史记录里禁止记录最后一次会话:
kill -9 $$
17、扫描网络寻找开放的端口:
nmap -p 8081 172.20.0.0/16
18、检查远程端口是否对bash开放:
echo >/dev/tcp/8.8.8.8/53 && echo "open"
19、产生随机的十六进制数,其中n是字符数:
openssl rand -hex n
20、检查某文件的md5值:
md5sum filename
21、在当前shell里执行一个文件里的命令:
source /home/user/file.name
22、截取前5个字符:
${variable:0:5}
23、MySQL主从延迟过大,分析某段时间 binlog 操作数量
mysqlbinlog -vvv --start-datetime='xxxx' --stop-datetime='xxx' binlogfiles | awk '/###/{if($0~/UPDATE|INSERT|DELETE/)count[$2" "$NF]++}END{for(i in count)print i,"\t",count[i]}' | column -t | sort -k3nr