用途

通过除去绑定程序和符号调试程序使用的信息,降低扩展公共对象文件格式(XCOFF)的对象文件的大小。

语法

strip [ -V ] [ -r [ -l ] | -x [ -l ] | -t | -H | -e | -E ] [ -X {32 |64 |32_64 }] [ -- ] File ...

描写叙述

strip 命令降低 XCOFF 对象文件的大小。strip 命令从 XCOFF 对象文件里有选择地除去行号信息、重定位信息、调试段、typchk 段、凝视段、文件头以及全部或部分符号表。 一旦您使用该命令,则非常难调试文件的符号;因此,通常应该仅仅在已经调试和測试过的生成模块上使用 strip 命令。使用 strip 命令降低对象文件所需的存储量开销。

对于每一个对象模块,strip 命令除去给出的选项所指定的信息。对于每一个归档文件,strip 命令从归档中除去全局符号表。

能够使用 ar -s 命令将除去的符号表恢复到归档文件或库文件里。

没有选项的 strip 命令除去行号信息、重定位信息、符号表、调试段、typchk 段和凝视段。

标志

-e 在对象文件的可选头中设置 F_LOADONLY 标志。假设对象文件放置在归档中,则该标志告知绑定程序(ld 命令),在与此归档链接时应忽略该对象文件里的符号。
-E 复位(关闭)对象文件的可选头中的 F_LOADONLY 位。(请參阅 -e 标志。)
-H 除去对象文件头、不论什么可选的头以及全部段的头部分。

注: 不除去符号表信息。

-l (小写 L)从对象文件里除去行号信息。
-r 除了外部符号和静态符号条目,将所有符号表信息除去。不除去重定位信息。同一时候除去调试段和 typchk 段。这个选项产生一个对象文件,该对象文件仍能够用作输入到链接编辑器(ld 命令)中。
-t 除去大多数符号表信息,但并不除去函数符号或行号信息。
-V 打印 strip 命令的版本。
-x 除去符号表信息,但并不除去静态或外部符号信息。 -x 标志同一时候除去重定位信息,因此将不可能链接到该文件。
-X mode 指定应检查 strip 的对象文件的类型。 mode 必须是下列之中的一个:

32
仅仅处理 32 位对象文件
64
仅仅处理 64 位对象文件
32_64
既处理 32 位对象文件,又处理 64 位对象文件

缺省值是处理 32 位对象文件(忽略 64 位对象文件)。也能够用 OBJECT_MODE 环境变量来设置 mode 。比如,OBJECT_MODE=64 使 strip 处理不论什么 64 位对象文件,并忽略 32 位对象文件。-X 标志重设 OBJECT_MODE 变量。

-- (双连字符)将尾随在该标志后的全部參数解释为文件名称。这就同意除去名称是以连字符開始的文件。

退出状态

该命令返回下面退出值:

0 成功完毕。
>0 出错。

演示样例

  1. 要除去 a.out 文件里的符号表和行号信息,请输入:

    strip a.out
  2. 要除去 a.out 文件里的对象文件头,请输入:
    strip -H a.out
  3. 要除去 lib.a 中的 32 位和 64 位符号表,请输入:
    strip -X 32-64 lib.a

文件

/usr/ccs/bin/strip 包括 strip 命令。

==================================================================================

UNIX下运行文件的减肥工具 strip
-

  UNIX下文件压缩命令compress大家都比較熟悉了,它的压缩率比較高, 和tar命令结合使用来做数据备份是最合适只是了。但compress压缩也有缺点,就是被压缩后的文件须要用命令uncompress解压后才干正常使用。而用strip命令就没有这个问题,它能清除运行文件里不必要的标示符及调试信息,可减小文件大小而不影响正常使用。但与compress 不同的是,文件一旦strip后就不能恢复原样了,所以strip是一个减肥工具而不是压缩工具。并且,被strip后的文件不包括调试信息,就不能用 dbx来调试程序了。如今让我们来详细效果怎样,看以下一个程序:
  #include
  main()
  {
  printf("hello, world/n");
  }
  用cc编译以后长度为46176字节,用strip后变为了 30648,足足减小了 1/3,并且仍然能够正常运行。除了用strip外,用共享库也是减小运行文件长度的方法。
  注:
   1.假设文件大小没有减小,那就是已经strip过了.
  2.cc 编译时加上"-s"參数,具有相同的作用。
  某种节约空间的办法:
  那就是对于单个比較大的可运行文件能够编写一个zexec脚本.以下的脚本仅仅是针对/usr/bin/cc的
   uncompress ./cc.Z
  mv cc /tmp
  cd /tmp
  ./cc

转载于:https://www.cnblogs.com/yxwkf/p/4030551.html

strip 命令的使用方法相关推荐

  1. strip 命令的用法

    用途 通过除去绑定程序和符号调试程序使用的信息,减少扩展公共对象文件格式(XCOFF)的对象文件的大小. 语法 strip [ -V ] [ -r [ -l ] | -x [ -l ] | -t | ...

  2. android so strip,用于CMake构建工具链中“strip”命令的Android NDK路径变量

    我正在尝试为我的Android库添加一个条带调试符号步骤,其中包括用于不同ABI的本机共享库,例如: x86 / native-lib.so,x86_64 / native-lib.so,arm64- ...

  3. oracle home 命令,$ORACLE_HOMEbin目录下所有命令的使用方法及命令详解

    求$ORACLE_HOME/bin目录下所有命令的使用方法及命令详解 如题. $ORACLE_HOME/bin目录下有很多命令,那我们平时用到的也不是太多,即使用到的那部分可能用法也不是完全能掌握,所 ...

  4. linux命令在哪里使用,在Linux不同场景中Linux命令的使用方法

    文章目录 1.日志查看实时查看tomcat日志文件查看: 2.修改配置文件内容最常见的就是修改环境变量 3.vi/vim编辑器 4.查看tomcat进程,杀死进程,重启进程. 5.压缩解压缩文件 6. ...

  5. linux6用户t密码,linux系统 用户和组管理类命令的使用方法

    列出当前系统上全部已经登陆的用户的用户名,注意:同一用户登陆屡次,则只显示一次便可.mysql [root@lpz ~]# who    #显示当前用户登陆信息linux root    tty1   ...

  6. 安装完Hadoop之后,命令行输入hadoop或hdfs却找不到命令的解决方法

    安装完Hadoop之后,命令行输入hadoop或hdfs却找不到命令的解决方法 参考文章: (1)安装完Hadoop之后,命令行输入hadoop或hdfs却找不到命令的解决方法 (2)https:// ...

  7. mysql中describe怎么用_MySQL中describe命令的使用方法小结

    MySQL中describe命令的使用方法小结 一.describe命令用于查看特定表的详细设计信息 例如为了查看guestbook表的设计信息,可用:describe guestbook descr ...

  8. ftp 传输数据:命令链路连接方法是一样的,而数据链路的建立方法就完全不同...

    0.FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式. PORT(主动)连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请 求,服务器接受连接,建立一条命令链 ...

  9. bash命令的使用方法

    小编给大家分享一下bash命令的使用方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!  Bash(Bash)是 Bour ...

最新文章

  1. 【160天】尚学堂高琪Java300集视频精华笔记(129)
  2. 如何在Eclipse中构建APK文件?
  3. 在成长中遇到的挫折事件对你的影响_多种语言环境中成长的宝宝,会影响说话早晚?其实没有想象的复杂...
  4. Python 爬虫性能相关总结
  5. Composition-based Multi-Relational Graph Convolutional Networks 多关系图神经网络 ICLR 2020
  6. python常用小技巧(四)——批量图片改名
  7. java rhino 运行 js_java 脚本引擎Rhino执行js代码和文件
  8. 没用TestNG之前,没想过自动化用例管理可以这么强大
  9. Leetcode: Increasing Triplet Subsequence
  10. 从源代码安装PostgreSQL10.1
  11. MySql 性能调优策略
  12. 软考笔记(数据结构篇)———— 二叉树、树、森林转换
  13. 《圈圈教你玩USB》 第三章 USB鼠标的实现——看书笔记(1)
  14. Linux 2038年问题
  15. 怎样用苹果手机看html文件在哪里,怎么在电脑上打开苹果手机上的文件?
  16. LeetCode 最热100题 最短路径和,minimum path sum
  17. ARM 微处理器的数据类型
  18. Python一行代码搞定炫酷可视化,Cufflinks值得拥有 !
  19. 粒子群优化算法改进之多子群合作粒子群优化算法
  20. mac下安装cobra

热门文章

  1. 单例设计模式和多线程
  2. Linux磁盘的划分
  3. 广义动量定理之速度V的应用分析
  4. 快速上手Ubuntu搭建Python编程环境
  5. 我的Python成长之路---第六天---Python基础(19)---2016年2月20日(晴)
  6. Oracle中sys和system的区别
  7. 深圳SQL数据库823报错修复
  8. (三)系统与架构级低功耗设计
  9. 【图像处理】——Python实现图像加噪(随机噪声、椒盐噪声、高斯噪声等)
  10. 最优化5-8章重点(考试点全)