命令
2020年9月10日大约 3 分钟
命令
man
可使用man man
查看
字体
查看所有字体
fc-list
查看中文字体
fc-list :lang=zh
安装步骤
# 将字体文件拷贝到 /usr/share/fonts/
cp xx.ttl /usr/share/fonts
# 进入字体目录
cd /usr/share/fonts
# 执行以下命令
mkfontscale
mkfontdir
shutdown
# 重启
shutdown -r
# 关机
shutdown -h
# 取消
shutdown -c
sed
Linux sed 命令是利用脚本来处理文本文件。 sed 可依照脚本的指令来处理、编辑文本文件。 Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。
有时候我们观察生产日志的时候,由于日志文件过大直接下载下来打开搜索比较困难,我们可以借助sed命令截取某个时间段段数据,如果通过文字匹配可以使用还有cat命令
按时间段截取日志
sed -n '/2020-08-14 04:40/,/2020-08-14 04:45/p' app-005-compare.out
这里的时间根据实际日志文件中打印的时间来设置
如果想把上述内容保存到文件中
sed -n '/2020-08-14 04:40/,/2020-08-14 04:45/p' app-005-compare.out > fileName
cat
cat 命令用于连接文件并打印到标准输出设备上。 在生产上观察某个功能的执行情况时,我们可以通过此通过此功能的一个或者多个关键字来从日志文件中匹配
cat app-005-compare.out | grep -E 'key1|key2'
# 查看文件内容 排除注释
cat xxx | grep ^[^#]
which
Linux which命令用于查找文件。 which指令会在环境变量$PATH设置的目录里查找符合条件的文件
which man
# 显示/usr/bin/man
网络相关
访问网络
- 访问百度方法一
exec 8 <> /dev/tcp/www.baidu.com/80
echo "GET / HTTP/1.0\n"
echo -e "GET / HTTP/1.0\n"
# 标准输出重定向至文件描述符8
echo -e "GET / HTTP/1.0\n" 1>& 8
- 访问百度方法二
curl www.baidu.com
- 访问百度方法三
# 建立tcp连接
nc www.baidu.com
cd /proc/$$/fd
抓包
# 监听80端口 或者 arp协议
tcpdump -nn -i eth0 port 80 [or arp]
# 捕获eth0网卡 打印所有源或目的端口是8080, 网络层协议为IPv4, 并且含有数据,而不是SYN,FIN以及ACK-only等不含数据的数据包.
# -A:将每个数据包以美国信息互换标准代码ASCII的格式打印出来。
# -i eth0 指定捕获eth0网卡流量
# -s 0 把snaplen 设置为0 意味着让tcpdump自动选择合适的长度来抓取数据包。 抓取数据包时默认抓取长度为68字节。加上 -s 0 后可以抓到完整的数据包
# (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0 意味着, ip数据包中确实是有数据
tcpdump -i eth0 -A -s 0 'tcp port 8080 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'
# -w ./target.cap : 保存成cap文件,方便用ethereal(即wireshark)分析
tcpdump -i eth0 -A -s 0 'tcp port 8080 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)' -w ./target.cap
路由命令
route -n
arp命令
arp
strace
追踪系统调用
strace -ff -o out java ClassName
lsof
lsof -p 11645
# 是否删除掉的文件仍然被进程占用而没有进行实际删除
lsof | grep deleted
https://www.likecs.com/show-902252.html