Linux下命令
1.查看进程id
ps -elf | grep name
2.显示进程下所有线程
方法一:PS
在ps命令中,“-T”选项可以开启线程查看。下面的命令列出了由进程号为的进程创建的所有线程。
ps -T -p
方法二: Top
top命令可以实时显示各个线程情况。要在top输出中开启线程查看,请调用top命令的“-H”选项,该选项会列出所有Linux线程。在top运行时,你也可以通过按“H”键将线程查看模式切换为开或关。
top -H -p
3.查看系统socket是否出错
cat /proc/net/snmp
查看InErrors是否在出现问题的期间有增长
UdpLite: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors
UdpLite: 0 0 0 0 0 0 0
4.查看网卡带宽和网卡收发包情况
4.1带宽
先ifconfig获取网卡信息如eth0
然后ethtool eth0 (看到speed那一行)
4.2收发包情况
ethtool -S eth0
这样就可以查看网卡的收发包的信息,并会看到是不是一些相关的error包
关注的是error相关的项,所以可以使用这个命令来看error的项:
ethtool -S eth0 |grep error
如果这几项有非零的,就需要注意了
5.查看socket缓冲大小
cat /proc/sys/net/core/rmem_max
cat /proc/sys/net/core/wmem_max
6.修改socket缓冲大小
echo 8000000 > /proc/sys/net/core/rmem_max
echo 8000000 > /proc/sys/net/core/wmem_max
7.查看当前目录下所有文件和目录的大小
du -sh *
8.查看磁盘使用情况
df -h
9.linux下tcpdump抓包
抓所有的包
tcpdump -i eth0 -s 0 -w recv.pcap
指定网卡
tcpdump -i any -s 0 -w recv.pcap
指定目的端口
tcpdump -i any -s 0 dst port 3200 -w recv.pcap
指定源端口
tcpdump -i any -s 0 src port 3200 -w recv.pcap
不抓包,在命令行显示收发情况
tcpdump -i eth0 -s 0
10.配置ip地址
配置IP地址
[root@localhost ~]# ifconfig eth0 192.168.120.56
[root@localhost ~]# ifconfig eth0 192.168.120.56 netmask 255.255.255.0
[root@localhost ~]# ifconfig eth0 192.168.120.56 netmask 255.255.255.0 broadcast 192.168.120.255
11.发包工具显示文件损坏
修复办法
发包工具显示文件损坏
tcprewrite --dlt=enet --enet-dmac=52:54:00:11:11:11 --enet-smac=52:54:00:22:22:22 --skip-soft-errors --skipbroadcast --infile=1m30fps.pcap --outfile=1m30fps2.pcap
12.动态库路径设置
只对当前shell有效,关闭shell或者退出当前用户则环境变量配置及无效了。
export LD_LIBRARY_PATH=/root/code/opencv/opencv-3.2.0/build/build/lib
#LD_LIBRARY_PATH=<动态库所在位置>
13.android查看进程调用栈
debuggerd -b pid
14. x86 Linux查看进程堆栈
pstack pid
15.进程或线程调度情况
cat /proc/pid/sched
nr_switches 总的调度次数
nr_voluntary_switches 自愿调度
nr_involuntary_switches 非自愿调度
16.查看gcc编译器宏定义
gcc -E -dM - </dev/null
输出内容是宏定义,代码中可以根据特定编译器的特定宏来进行处理
17.gdb 调试程序
gdb 调试程序
-
gdb 调试当前正在运行的程序
gdb attach pid
或者 gdb、进入之后attach pid
当attach进程时,会停止进程的运行,这时使进程继续运行需要使用continue/c命令 -
gdb 启动程序
gdb filename
run -
gdb 运行脚本启动的程序
gdb /usr/bin/sh 或者 gdb /usr/bin/bash
(根据脚本第一行是#!/bin/sh还是 #!)
run filename (如:run start.sh)
18.nm查看库符号
nm [-DTt] lib.so| grep 符号
-D 显示动态符号而不是普通符号
-d 显示普通符号
-T 打印动态符号表入口地址
-t 打印符号表入口地址
具体可以man nm
Windows下命令
1.过滤特定内容类似Linux下的grep
netstat -a | findstr 192.168.38.31
–也可使用find命令,注意参数加双引号!
netstat -a | findstr “192.168.38.31”
Notepad++
Notepad++中列选(竖选)
1.按住Alt键,然后用鼠标进行区选,就可以列选了
2.使用Alt + Shift + 方向键就可以列选了。