专栏电商日志财经减肥爱情
投稿投诉
爱情常识
搭配分娩
减肥两性
孕期塑形
财经教案
论文美文
日志体育
养生学堂
电商科学
头戴业界
专栏星座
用品音乐

Linux下10个帮助你定位和调试用的命令大收集

  本文列出在Linxu下帮助你调试或定位问题常用的命令,相信你一定会用到。本文旨在抛砖引玉,具体的使用详情可自行查找。
  file
  Linuxfile命令用于查看文件类型。filebinlsbinls:ELF64bitLSBexecutable,x8664,version1(SYSV),dynamicallylinked(usessharedlibs),forGNULinux2。6。32,BuildID〔sha1〕aaf05615b6c91d3cbb076af81aeff531c5d7dfd9,strippedfilestudystudy:directory
  ldd
  ldd的作用是打印可执行档依赖的共享库文件。针对动态链接的二进制文件运行它会显示其所有依赖的库及其路径。lddbinlslinuxvdso。so。1(0x00007ffd623ef000)libselinux。so。1lib64libselinux。so。1(0x00007fd138066000)libcap。so。2lib64libcap。so。2(0x00007fd137e61000)libacl。so。1lib64libacl。so。1(0x00007fd137c58000)libc。so。6lib64libc。so。6(0x00007fd13788a000)libpcre。so。1lib64libpcre。so。1(0x00007fd137628000)libdl。so。2lib64libdl。so。2(0x00007fd137424000)lib64ldlinuxx8664。so。2(0x00007fd13828d000)libattr。so。1lib64libattr。so。1(0x00007fd13721f000)libpthread。so。0lib64libpthread。so。0(0x00007fd137003000)ltrace
  ltrace能够跟踪进程的库函数调用,它会显现出哪个库函数被调用,可以作为堆栈调用跟踪调试使用。ltrace〔option。。。〕〔command〔arg。。。〕〕a对齐具体某个列的返回值。c计算时间和调用,并在程序退出时打印摘要。C解码低级别名称(内核级)为用户级名称。d打印调试信息。e改变跟踪的事件。f跟踪子进程。h打印帮助信息。i打印指令指针,当库调用时。l只打印某个库中的调用。L不打印库调用。n,indentNR对每个调用级别嵌套以NR个空格进行缩进输出。o,outputfile把输出定向到文件。pPID附着在值为PID的进程号上进行ltrace。r打印相对时间戳。sSTRLEN设置打印的字符串最大长度。S显示系统调用。t,tt,ttt打印绝对时间戳。T输出每个调用过程的时间开销。uUSERNAME使用某个用户id或组ID来运行命令。V,version打印版本信息,然后退出。ltrace。exelibcstartmain(0x40052d,1,0x7ffc38054de8,0x400550unfinished。。。puts(hellohello)6exited(status0)
  hexdump
  hexdump是Linux下的一个二进制文件查看工具,它可以将二进制文件转换为ASCII、八进制、十进制、十六进制格式进行查看。hexdumpbinlshead0000000457f464c01020001000000000000000000000100003003e0001000058500000000000000000020004000000000000003a00002000000000000030000000000040003800090040001c001b000004000060000000500000040000000000000000005000400000000000000040000000000000000006001f800000000000001f800000000000000000700008000000000000000300000004000000000800238000000000000023800000000000000000900238000000000000001c000000000000strings
  strings命令在对象文件或二进制文件中查找可打印的字符串。字符串是4个或更多可打印字符的任意序列,以换行符或空字符结束。strings命令对识别随机对象文件很有用。语法:strings〔a〕〔〕〔o〕〔tFormat〕〔nNumber〕〔Number〕〔file。。。〕aall:扫描整个文件而不是只扫描目标文件初始化和装载段fprintfilename:在显示字符串前先显示文件名nbytes〔number〕:找到并且输出所有NUL终止符序列:设置显示的最少的字符数,默认是4个字符tradix{o,d,x}:输出字符的位置,基于八进制,十进制或者十六进制o:类似radixoTtarget:指定二进制文件格式eencoding{s,S,b,l,B,L}:选择字符大小和排列顺序:s7bit,S8bit,{b,l}16bit,{B,L}32bit:读取中选项stringsbinlsheadlib64ldlinuxx8664。so。2libselinux。so。1gmonstartinitfgetfileconfreeconlgetfileconfinilibcap。so。2captotextreadelf
  一般用于查看ELF格式的文件信息,常见的文件如在Linux上的可执行文件,动态库(。so)或者静态库(。a)等包含ELF格式的文件。readelfhexeELFHeader:Magic:7f454c46020101000000000000000000Class:ELF64Data:2scomplement,littleendianVersion:1(current)OSABI:UNIXSystemVABIVersion:0Type:EXEC(Executablefile)Machine:AdvancedMicroDevicesX8664Version:0x1Entrypointaddress:0x400440Startofprogramheaders:64(bytesintofile)Startofsectionheaders:6432(bytesintofile)Flags:0x0Sizeofthisheader:64(bytes)Sizeofprogramheaders:56(bytes)Numberofprogramheaders:9Sizeofsectionheaders:64(bytes)Numberofsectionheaders:30Sectionheaderstringtableindex:29objdump
  objdump命令是Linux下的反汇编目标文件或者可执行文件的命令,它以一种可阅读的格式让你更多地了解二进制文件可能带有的附加信息。catexe。cincludestdio。hintmain(){printf(hello);return0;}objdumpSexe。。。000000000040052dmain:40052d:55pushrbp40052e:4889e5movrsp,rbp400531:bfe0054000mov0x4005e0,edi400536:e8d5feffffcallq400410putsplt40053b:b800000000mov0x0,eax400540:5dpoprbp400541:c3retq400542:662e0f1f840000nopwcs:0x0(rax,rax,1)400549:00000040054c:0f1f4000nopl0x0(rax)。。。strace
  strace常用来跟踪进程执行时的系统调用和所接收的信号。在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。strace。exeexecve(。exe,〔。exe〕,〔27vars〕)0brk(NULL)0xe22000mmap(NULL,4096,PROTREADPROTWRITE,MAPPRIVATEMAPANONYMOUS,1,0)0x7f0e1780e000access(etcld。so。preload,ROK)1ENOENT(Nosuchfileordirectory)open(etcld。so。cache,ORDONLYOCLOEXEC)3fstat(3,{stmodeSIFREG0644,stsize83540,。。。})0mmap(NULL,83540,PROTREAD,MAPPRIVATE,3,0)0x7f0e177f9000close(3)0open(lib64libc。so。6,ORDONLYOCLOEXEC)3read(3,177ELF211331202。。。,832)832fstat(3,{stmodeSIFREG0755,stsize2156160,。。。})0mmap(NULL,3985888,PROTREADPROTEXEC,MAPPRIVATEMAPDENYWRITE,3,0)0x7f0e17220000mprotect(0x7f0e173e3000,2097152,PROTNONE)0mmap(0x7f0e175e3000,24576,PROTREADPROTWRITE,MAPPRIVATEMAPFIXEDMAPDENYWRITE,3,0x1c3000)0x7f0e175e3000mmap(0x7f0e175e9000,16864,PROTREADPROTWRITE,MAPPRIVATEMAPFIXEDMAPANONYMOUS,1,0)0x7f0e175e9000close(3)0mmap(NULL,4096,PROTREADPROTWRITE,MAPPRIVATEMAPANONYMOUS,1,0)0x7f0e177f8000mmap(NULL,8192,PROTREADPROTWRITE,MAPPRIVATEMAPANONYMOUS,1,0)0x7f0e177f6000archprctl(ARCHSETFS,0x7f0e177f6740)0mprotect(0x7f0e175e3000,16384,PROTREAD)0mprotect(0x600000,4096,PROTREAD)0mprotect(0x7f0e1780f000,4096,PROTREAD)0munmap(0x7f0e177f9000,83540)0fstat(1,{stmodeSIFCHR0620,strdevmakedev(136,0),。。。})0mmap(NULL,4096,PROTREADPROTWRITE,MAPPRIVATEMAPANONYMOUS,1,0)0x7f0e1780d000write(1,hello,6hello)6exitgroup(0)?exitedwith0
  nm
  nm是name的缩写,它显示指定文件中的符号信息,文件可以是对象文件、可执行文件或对象文件库。如果文件中没有包含符号信息,nm报告该情况,但不把他解释为出错。nm缺省情况下报告十进制符号表示法下的数字值。nmexe0000000000601034Bbssstart0000000000601034bcompleted。63550000000000601030Ddatastart0000000000601030Wdatastart0000000000400470tderegistertmclones00000000004004e0tdoglobaldtorsaux0000000000600e18tdoglobaldtorsauxfiniarrayentry00000000004005d8Rdsohandle0000000000600e28dDYNAMIC0000000000601034Dedata0000000000601038Bend00000000004005c4Tfini0000000000400500tframedummy0000000000600e10tframedummyinitarrayentry0000000000400710rFRAMEEND0000000000601000dGLOBALOFFSETTABLEwgmonstart00000000004005e8rGNUEHFRAMEHDR00000000004003e0Tinit0000000000600e18tinitarrayend0000000000600e10tinitarraystart00000000004005d0RIOstdinused0000000000600e20dJCREND0000000000600e20dJCRLIST00000000004005c0Tlibccsufini0000000000400550TlibccsuinitUlibcstartmainGLIBC2。2。5000000000040052dTmainUputsGLIBC2。2。500000000004004a0tregistertmclones0000000000400440Tstart0000000000601038DTMCEND。。。
  gdb
  gdb是GNU开源组织发布的一个强大的Linux下的程序调试工具。gccgoexeexe。cgdbexeGNUgdb(GDB)RedHatEnterpriseLinux7。6。1115。el7Copyright(C)2013FreeSoftwareFoundation,Inc。LicenseGPLv3:GNUGPLversion3orlaterhttp:gnu。orglicensesgpl。htmlThisisfreesoftware:youarefreetochangeandredistributeit。ThereisNOWARRANTY,totheextentpermittedbylaw。Typeshowcopyingandshowwarrantyfordetails。ThisGDBwasconfiguredasx8664redhatlinuxgnu。Forbugreportinginstructions,pleasesee:http:www。gnu。orgsoftwaregdbbugs。。。Readingsymbolsfromhomestudyexe。。。done。(gdb)list1includestdio。h2intmain()3{45printf(hello);6return0;78}(gdb)b5Breakpoint1at0x400531:fileexe。c,line5。(gdb)rStartingprogram:homestudyexeBreakpoint1,main()atexe。c:55printf(hello);(gdb)nhello6return0;(gdb)

卡塔尔世界杯日本VS哥斯达黎加,带你1分钟了解这个国家挑战3天在头条写日记2022世界杯挑战21天在头条写日记人人能科普,处处有新知看国旗认球队日本国(Japan),简称日本,首都东京,位于太平洋西岸,是一个由东北向西南延伸的弧形岛国这就是世界杯!冷门与混乱齐飞,末轮将上演草根逆袭,豪强死掐2022世界杯但凡在亚洲举办的世界杯,均是一片大乱。首轮战罢,沙特阿拉伯队和日本队就联手奉献了世界杯史上超级冷门,两支赛前根本就不被看好的亚洲球队,均是在比分落后的情况下逆转了阿根你知道吗?中国古代专门的足球场称为什么?蚂蚁庄园今日答案卡塔尔世界杯正在火热进行中,相信大家都在荧幕上感受到了当今世界第一运动的魅力。球员们在绿茵场挥洒汗水,只为争夺那座属于冠军的大力神杯。小组赛前两轮战罢,一些球队的出线形势已经基本明在世界杯球迷村住帐篷是什么体验?内部实景曝光,网友真有哈利波特魔法帐篷住在世界杯球迷村是什么体验?一位博主分享了卡塔尔球迷村的帐篷屋内部实景,登上热搜。网友评论,这帐篷多少带点魔法!外部的样子,平平无奇甚至有点寒酸打开帐篷之后万万没想到侘寂风内部装修世界杯,被Web3盯上的全球舞台免责声明本文旨在传递更多市场信息,不构成任何投资建议。文章仅代表作者观点,不代表MarsBit官方立场。小编记得关注哦来源汤圆原文标题世界杯,被Web3盯上的全球舞台足球世界杯,这范加尔我一直说的是荷兰能够赢得世界杯不会让德佩冒险出战直播吧11月28日讯荷兰队将在小组赛第三轮与东道主卡塔尔交手,荷兰队主帅范加尔赛前出席了新闻发布会。谈及荷兰队本届世界杯的前景,范加尔说道我从来没有说过我们将赢得世界杯,我一直说的世界杯红牌黄牌规则,教练吃红牌会怎么样?守门员吃红牌会怎么样问题1介绍一下红黄牌停赛规则?答1得到第四张黄牌停赛一场2再得四张黄牌就停赛一场3再得四张黄牌就停赛一场4再得三张黄牌就停赛一场5再得两张黄牌就停赛一场6以后每得一张黄牌就停赛一场世界杯神奇一夜!内马尔缺阵,巴西葡萄牙两连胜,携手提前晋级2022年卡塔尔世界杯继续进行,G组和H组第2轮的四场比赛全部结束,各支球队有喜有忧,内马尔首轮受伤后缺阵,五星巴西小胜瑞士,取得两连胜,基本上锁定小组出线权。葡萄牙队20力克乌拉卡塔尔世界杯葡萄牙太太团,C罗女友乔治娜,也只能垫底卡塔尔世界杯葡萄牙太太团,C罗女友乔治娜,还不是最美的。作为世界杯生涯的最后一舞,小组赛第一场C罗就百感交集,除了英雄暮年的迟疑,还有与曼联的恩怨。就在世界杯前夕,C罗与曼联一拍两数据世界杯预测16强对阵形势荷兰会幸运的与英格兰相会吗?2022世界杯世界杯16强荷兰英格兰2022年卡塔尔世界杯AB组积分榜2022年卡塔尔世界杯第2轮结束,紧张的第3轮生死战即将开打,小组出线鹿死谁手,我们一起通过一些数据来分析判断美国伊朗生死战,新仇旧恨一起算头条创作挑战赛美国对阵伊朗,火星撞地球!这场本届世界杯焦点战即将开赛之际,场外却传来了不和谐的声音,美国男足官方推特发布了一张没有伊朗国徽的国旗照片。美国队这种行为也遭到伊朗队的严
喝酒30年的老行家,请客吃饭时必备的3款酒,你知道吗?咱们在日常生活中,无论是请客吃饭还是商业应酬,又或是和朋友闲聊小酌,都是需要喝酒的。每个人偏好的口味和选酒的侧重点都是不太一样的,小编就先来给大家说说自己在挑酒时更看重的点吧。首先立体多维政策保障丰收背后的大国粮策央视网消息今年,国家持续强化政策支持,加大投入力度,逐步构建起要素多元立体多维的扶持粮食生产的政策保障体系,成为丰收的有力支撑。在补贴方面,今年国家继续安排耕地地力保护补贴,稳定实大曝光!公募逆市加仓这些龙头股中国基金报记者李树超见习记者雨田受美债收益率俄乌冲突疫情反复和经济下行压力扰动,今年三季度沪指从3400点跌至3000点附近,在A股快速变盘期间,公募基金作为机构资金风向标,如何在清华博士辞职创业,创成江苏瞪羚企业现代快报讯(记者杨亦文)他是家中最小的,也是唯一的男孩,他的上面有6个姐姐。大家或许会想,在这样环境成长的男孩肯定是娇生惯养难有作为的。但彭伟平却惊掉了众人的下巴,从小就刻苦努力,反对动态清零的恶果开始显现,香港又一家老牌企业清盘近一段时间以来,数万名香港民众花钱购买免打针纸,让本就严峻的香港防疫形势雪上加霜。而香港迟迟未能缓解的疫情,也使得众多期盼着与内地实现正常通关的香港商家面临着更加艰难的局面。据港媒好的亲密关系让彼此照耀建立一段相互滋养彼此信任且长久的亲密关系,需要发展我们的很多特质智慧力量感爱慈悲创造力勇气阴柔力量阳刚力量在这个过程中,两个人的成长节奏会不同有时你需要做追随者,有时需要做引领者有在守正创新中探索高速公路品牌建设的湖南样本路,在不断延伸高速路网,在不断完善,社会公众对高速出行的需求也在不断提升。近年来,湖南省高速公路集团有限公司(以下简称湖南高速集团)在加快推进高速公路建设的同时,守正创新,开拓进取小米上架新款充电器新品支持UFCS1。0融合快充尽管在10月27日的RedmiNote12系列新品发布会上已经带来了多款新品,但其实小米还准备了更多的新品在最近正式上架,比如最近在小米商城上架的小米67WGaN双口充电器套装和小新车触控按键被吐槽?大众将改回方向盘实体按键,新高尔夫首搭文懂车帝原创曹浩懂车帝原创产品日前,我们从海外媒体获悉,大众汽车CEO施文韬(ThomasSchfer)在其个人社交媒体上表示,大众品牌旗下车型将在今后推出的车型中改回方向盘上的实中荣股份登陆创业板产品品类覆盖广泛细分领域品牌优势明显近年来,我国包装行业实现了持续快速发展,现已形成以纸包装塑料包装金属包装玻璃包装包装印刷和包装机械为主要产品的独立完整门类齐全的现代包装工业体系,基本能够满足国内消费和商品出口的需年均复合增长30,这个服饰品牌很懂情绪管理?文丨木狸,出品丨零售氪星球(IDLSKXQ)情绪消费日渐成为影响商业世界的新力量。今年7月,话梅美妆集合店以银色集装箱设计风格的快闪店登陆广州万菱汇,拉满对生活与美的态度9月,潮玩
友情链接:快好找快生活快百科快传网中准网文好找聚热点快软网