我使用过的linux命令之strings

2023-05-16

strings命令用于输出文件中可打印的字符串。不论文件是普通文本,还是可执行文件,任何文件都可以。

最常用的选项:
-a 扫描整个文件的任何段,这是strings的默认行为,但是这种默认行为是可以改变的。所以建议加上此选项。
-f Print the name of the file before each string.
-n 字符串的最小长度。默认是4。也就是说长度小于4的字符串不会输出。

常用场景:

  1. 确定某个可执行文件的版本。
    生成的so文件的文件名往往不包含完整的版本号。
    故可以使用strings -a | grep xxx.xxx 来确认版本。
    当然,grep也可以。但是grep只能显示match与否,不能输出具体的字符串。

  2. 确认编译ko文件所使用的gcc版本

root@debian2:~/test# strings /lib/modules/4.9.0-7-686/kernel/net/netfilter/ipvs/ip_vs.ko | grep -i GCC
GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
  1. 确认源文件与目标文件的对应关系
[taoge@localhost learn_c]$ strings -f * | grep "my dear"
a.out: oh, my dear, c is %d
test.c: 	printf("oh, my dear, c is %d\n", c);
[taoge@localhost learn_c]$ 

参考

  1. man strings
  2. https://blog.csdn.net/stpeace/article/details/46641069
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我使用过的linux命令之strings 的相关文章

随机推荐

  • 解决[ERROR] Some problems were encountered while processing the POMs:

    ERROR ERROR Some problems were encountered while processing the POMs 解决方法 xff1a http www yayihouse com yayishuwu chapter
  • Uncaught ReferenceError: xxx is not defined at HTMLInputElement.onclick已解决

    触发标签的onclick事件报错如下 xff1a Uncaught ReferenceError http is not defined at HTMLInputElement onclick list do pageType 61 ini
  • bootstrap实现垂直导航框架

    span class hljs tag lt span class hljs title html span gt span span class hljs tag lt span class hljs title head span gt
  • nohup: 忽略输入并把输出追加到"nohup.out"或者nohup: 忽略输入重定向错误到标准输出端

    解决nohup 忽略输入并把输出追加到 34 nohup out 34 或者nohup 忽略输入重定向错误到标准输出端 解决方法 xff1a 执行nohup java jar do iptable jar amp 运行jar会提示 xff1
  • jsp中使用split函数

    jsp中使用split函数 xff0c 实现字符串劈开 截取 解决方法 xff1a 1 jsp页面头部引入 lt 64 taglib uri 61 34 http java sun com jsp jstl functions 34 pre
  • 可视化工具D3教程

    可视化工具D3教程 第1章 D3简介第2章 第一个程序 Hello World第3章 正式进入D3的世界第4章 选择 插入 删除元素第5章 做一个简单的图表第6章 比例尺的使用第7章 坐标轴第8章 完整的柱形图第9章 让图表动起来第10章
  • 鸿蒙OS Hi3861的芯片实际开发中遇到的问题

    鸿蒙OS Hi3861的芯片实际开发中遇到的问题 优点 比较适合开发者快速开发 xff0c 上面的硬件操作的函数封装很简单 xff0c 非常适合初学者使用封装好的函数调用硬件管脚 xff0c 比如I2c gpio spi sdio 都被封装
  • private和public

    一 结构体 类的定义和实现分离 xff0c 代码可读性更强 xff08 非必须 xff09 span class token comment xxx h头文件 span span class token keyword struct spa
  • Mac下配置adb命令到系统变量与其后基本的adb操作

    1 进入terminal并输入echo HOME 2 命令行输入touch bash profile 注意 xff0c touch后面有一个空格 xff0c 为了在访达下的个人文件夹下面创建一个 bash profile文件 xff0c 类
  • Ubuntu 16.04 安装samba服务

    安装samba服务 sudo apt get install samba samba common 创建用于共享的目录 sudo mkdir span class token operator span home long share 给共
  • Cortex M4 SVC 中断

    Cortex SVC 中断 SVC 系统管理调用 异常优先级为1 xff0c SVC异常是由SVC指令触发 也可以直接设置NVIC寄存器触发异常 应用程序工作在非特权访问模式 xff0c 当需要特权模式访问系统资源时 xff0c 可以使用S
  • FreeRTOS --(4)任务管理之启动调度器

    目录 1 vTaskStartScheduler 2 xPortStartScheduler 3 vPortSetupTimerInterrupt 4 prvStartFirstTask 5 vPortSVCHandler 在使用 Free
  • FreeRTOS --(7)任务管理之任务切换

    现在创建任务 xff08 xTaskCreate xff09 启动调度器 xff08 vTaskStartScheduler xff09 xff0c 任务控制 xTaskDelay xff0c 以及Tick 中断 xff08 xPortSy
  • Spring Aop到底有什么用处?

    假如没有aop xff0c 在做日志处理的时候 xff0c 我们会在每个方法中添加日志处理 xff0c 比如 但大多数的日子处理代码是相同的 xff0c 为了实现代码复用 xff0c 我们可能把日志处理抽离成一个新的方法 但是这样我们仍然必
  • 获取对象自身的属性

    问题 找出对象 obj 不在原型链上的属性 注意这题测试例子的冒号后面也有一个空格 1 返回数组 xff0c 格式为 key value 2 结果数组不要求顺序 答案 Object keys 方法 xff08 156 ms xff09 返回
  • 重启linux后无法ssh登录

    博客搬运自我的个人博客 chantAria的博客 精力有限 新博客我会同步到CSDN 但博客内容的更新只会出现在个人博客 欢迎大家来玩耍哦 重启llinux后无法ssh登录的情况很多 其中一种情况是在之前update的时候产生了一个坏的内核
  • 使用FFmpeg将视频编码格式转化为H264编码

    背景介绍 xff1a web开发中涉及到视频播放的前端一般会使用h5的video标签对后端提供的视频文件url直接加载进行播放 xff0c 虽然视频文件后缀都是mp4 xff0c 但并非所有视频文件的编码格式都支持用video播放 xff0
  • Cause: org.xml.sax.SAXParseException; lineNumber: 5; columnNumber: 26; 1 字节的 UTF-8 序列的字节 1 无效。

    报错为 xff1a Cause org xml sax SAXParseException lineNumber 5 columnNumber 26 1 字节的 UTF 8 序列的字节 1 无效 是你的xml文件里面的 设置成了默认的UTF
  • Centos7 java服务开机自启动

    1 在 etc systemd system 目录下 新建脚本 cd span class token operator span usr span class token operator span lib span class toke
  • 我使用过的linux命令之strings

    strings命令用于输出文件中可打印的字符串 不论文件是普通文本 xff0c 还是可执行文件 xff0c 任何文件都可以 最常用的选项 xff1a a 扫描整个文件的任何段 xff0c 这是strings的默认行为 xff0c 但是这种默