linux程序调试常用命令

1 调用跟踪

    跟踪系统调用 strace ls –l

    跟踪库调用  ltrace

2 lsof(list open file)

    查看程序命令打开了哪些文件  lsof –p PID; lsof –c CMD

    查看某个用户打开的文件  lsof –u root

    查看某个文件被哪个程序访问 lsof filename

3 proc文件系统

    虚拟文件系统,可以使用cat,more,less查看

    例如:cat /proc/cpuinfo;    cat /proc/meminfo

4 网络调试

    ping

    tcpdump   tcpdump –i eth0 –s0 –SvX host 192.168.1.12 and port 1234 –w test.pcap

    ethtool

    traceroute

    netstat –anp | grep port

5 二进制文件调试

    file  filename  文件类型

    ldd  显示依赖动态库,对应的库路径配置文件 /etc/ld.so.conf,重新加载命令 ldconfig

    nm  列出目标文件中符号信息

    objdump  列出目标文件信息,反汇编  objdump –d hello | more

    readelf  显示ELF文件信息,查看某个库是否定义了某个函数 readelf –s hello.so –W 60 | grep symbol_name

    addr2line  在包含调试信息下,将地址转换成源程序名字

6 系统性能查看

    top

    vmstat

7 .o文件查看

    find /home/libs –iname “*.*o” –exec sh –c “ ls {}; nm –A {} | grep –iH “match_conten””\;

8 特殊删除

    bash下,可以使用扩展的globbing,启动方法:shopt –s extglob,删除除fie1和file2之外的所有文件  rm !(file1|file2)

时间: 2024-11-07 01:35:06

linux程序调试常用命令的相关文章

linux日常管理常用命令--w

linux日常管理常用命令--w 命令:w(linux管理员最常用的命令) [[email protected] ~]# w 14:45:41 up 2 min,  2 users,  load average: 0.10, 0.10, 0.04 USER     TTY      FROM              [email protected]   IDLE   JCPU   PCPU WHAT root     tty1     -                14:44   54.

Linux查看系统配置常用命令

Linux查看系统配置常用命令: 系统 # uname -a # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue # 查看操作系统版本# cat /proc/cpuinfo # 查看CPU信息# hostname # 查看计算机名# lspci -tv # 列出所有PCI设备# lsusb -tv # 列出所有USB设备# lsmod # 列出加载的内核模块# env # 查看环境变量 资源# free -m # 查看内存使用量和交换区使用量# df -h # 查看各

Linux Jboss下常用命令

cd /opt/jboss/binnohup sh run.sh -b 0.0.0.0 &启动jboss:nohup ./run.sh -b 0.0.0.0 &nohup sh run.sh -b 0.0.0.0 &//nohup表示转入后台运行: 使用./run.sh和sh  run.sh 都能启动:-b 表示绑定IP启动,如果为0.0.0.0则表示所有IP都可访问该服务,此参数可不写,可以再jboss的server.xml配置文件里配置如下:添加 & 表示恢复到命令行模

linux查看日志 (常用命令)

cat   tail -f  日 志 文 件 说    明 /var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一   /var/log/secure 与安全相关的日志信息   /var/log/maillog 与邮件相关的日志信息   /var/log/cron 与定时任务相关的日志信息   /var/log/spooler 与UUCP和news设备相关的日志信息   /var/log/boot.log 守护进程启动和停止相关的日志消息 系

【Linux基础】常用命令大全

Linux基础之常用命令大全 系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 cat /proc/cpuinfo 显示CPU info的信息 cat /proc/interrupts 显示中断 cat /

Linux文本处理常用命令

1.正则表达式 (1)正则表达式一般用来描述文本模式的特殊用法,由普通字符(例如字符a-z)以及特殊字符(称为元字符,如/.*.?等)组成.  (2)基本元字符集及其含义      ^ :只匹配行首.   如^a 匹配以a开头的行abc,a2e,a12,aaa,......      $ :只匹配行尾.   如^a 匹配以a结尾的行bca,12a,aaa,.......      * :匹配0个或多个此单字符. 如(a)* 匹配 空,a,aa,aaa,....      [] :只匹配[]内字符

linux vi(vim)常用命令汇总(转)

前言 首先解析一个vim vi是unix/linux下极为普遍的一种文本编辑器,大部分机器上都有vi的各种变种,在不同的机器上常用不同的变种软件,其中vim比较好用也用的比较广泛.vim是Vi Improved的缩写,表示更好的vi.本文就说些比较有用.比较常用的命令,若能熟练运用这些命令,那么会发现编辑文件很大帮助,尤其作为开发人员,能够快速的提高开发效率. 说明 以下的例子中 xxx表示在命令模式下输入xxx并回车 以下的例子中 :xxx表示在扩展模式下输入xxx并回车 小括号中的命令表示相

linux开发中常用命令

经常使用linux进行开发,软件安装,环境部署等,会用到一些常用的命令,下面是我平时使用或收集到的linux下的常用命令集: type command 查看一条命令是外部命令还是内部命令[[email protected] test]# type cdcd is a shell builtincd 是内部命令 [[email protected] test]# type mountmount is /bin/mountmount 是外部命令 内部命令可以直接访问环境变量,外部命令不可以 查看内部

第二课:第一讲Linux操作系统及常用命令

第二课:第一讲Linux操作系统及常用命令1.liunx中"X"表示图像显示协议X-window有三种:Gnome,KDE,Xface2.windows->.dll(dynamic link library)liunx->.so (shared object)3.认证:authentication授权:authorization审计:audition(通过日志记录下来实现审计机制)4.登录成功后的"[[email protected] root]"是pr