前言
记录一些在编程或者调试过程中用到的linux系统命令,这些命令在编码或者调试过程中,能够起到很好的帮助作用。
tcpdump 抓包分析
1 | tcpdump -i any -w test.pcap |
对任何网卡的数据进行抓包并将抓包结果存储为test.pcap
strings 搜索可执行文件中包含的字符
1 | strings test | grep "somestring" |
nm 查看某库是否包含某个接口
1 | nm libtest_interface.a | grep test |
查看libtest_interface.a中是否包含test相关接口
readelf 查看目标文件信息
1 | readelf -h libdb.a |
1 | File: libgmock.a(gmock-all.o) |
可以看到目标文件的一些信息
addr2line 定位core dump问题
1 | addr2line -e test test_add.so 0x0011d680 -f |
比如core dump的地址为0x0011d680,so文件为test_add.so,可以使用上面的命令知道哪一行出了问题
addr2line -e 进程 地址