awk
打印/etc/passwd文件中, 4,5,6行中以“:”为分隔符的第一个字段
awk -F: 'NR>=4 && NR<=6 {print $1}' /etc/passwd | sort -n |uniq -d
-F 用来指定分割符号,默认是空格;
NR代表行号
print $1代表打印第一个字段
uniq -d 打印所有重复的数字
uniq -u 打印所有不重复的数字
uniq -c 打印重复次数
uniq 打印去重之后的结果
sed
sed [options] 'command' file(s)
替换
sed 's/This/aaa/' test.txt
sed 's/This/aaa/g' test.txt 全部替换
删除
sed '/^$/d' test.txt 删除所有的空白行
sed '2d' text.txt 删除第二行
截取固定行数
sed -n '1,2p' text.txt 截取第一行到第二行
tcpdump
tcpdump -i eth0 host 192.168.112.129 and port 9999
tcpdump -i eth0 host 192.168.112.129 -xx 2>&1 > terminal.log //十六进制保存数据
strace
strace -f -F -o dcop-strace.txt dcopserver
这里 -f -F选项告诉strace同时跟踪fork和vfork出来的进程,-o选项把所有strace输出写到dcop-strace.txt里 面,dcopserver是要启动和调试的程序。
sort && unique
sort uniqtest |uniq -c
tar
压缩
tar -czf fileout.tar.gz filein ----filein待压缩文件 fileout.tar.gz gzip压缩之后的文件
解压
tar -zvxf fileout.tar.gz fileout ----fileout 解压之后的文件
vi全局替换
:%s/vivian/sky/g
zi压缩解压缩
zip -r xxx.zip ./* #将当前目录下的所有文件压缩为xxx.zip
unzip xxx.zip #解压缩
find 搜索到结果后执行命令
find / -name filename -exec ll {} \; #这个命令的后两个符号{} \;是固定的
正则表达替换
(.. ) 替换为 (0x\1,)
可以实现把空格分给字的字符,替换为字符前加0x,字符后加逗号,其中 \1代表()中匹配到的内容
ss替换netstat
ss -t -a -p 显示所有的tcp连接
ss -u -a -p 显示所有的udp连接
ss -l显示所有监听
nc
# nc -l 9999 # 开启一个本地9999的TCP协议端口,由客户端主动发起连接,一旦连接必须由服务端发起关闭
# nc -vw 2 192.168.21.248 11111 # 通过nc去访问192.168.21.248主机的11111端口,确认是否存活;可不加参数
# nc -ul 9999 # 开启一个本地9999的UDP协议端口,客户端不需要由服务端主动发起关闭
# nc 192.168.21.248 9999 < test # 通过192.168.21.248的9999TCP端口发送数据文件
# nc -l 9999 > zabbix.file # 开启一个本地9999的TCP端口,用来接收文件内容
rz;sz
rz : windows -> linux
sz : linux -> windows
ifconfig
设置IP和掩码
ifconfig eth0 192.168.5.40 netmask 255.255.255.0
设置网关
route add default gw 192.168.5.1
redis-cli
redis-cli -a Longshine#01 --cluster call 192.168.1.38:4132 keys \*
redis-cli -a Longshine#01 -c -h 192.168.1.38 -p 4321
cluster批量删除key:
https://blog.csdn.net/qq_31665011/article/details/78033981
date
date -d @1611820878 #unix时间戳转换为时间
date +%s #获取当前unix时间戳
date -d '-100 seconds'#100秒之前的时间
date -d '-100 days' #100天之前的时间