使用

通过消除使用调试器的粘合剂和符号信息,减少扩展公共对象文件格式(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

strip 使用命令的更多相关文章

  1. 程序减肥,strip,eu-strip 及其符号表

    程序减肥,strip,eu-strip 及其符号表 我们要给我们生成的可执行文件和DSO瘦身,因为这样可以节省更多的磁盘空间,所以我们移除了debug信息,移除了符号表信息,同时我们还希望万一出事了, ...

  2. python高级之网络编程

    python高级之网络编程 本节内容 网络通信概念 socket编程 socket模块一些方法 聊天socket实现 远程执行命令及上传文件 socketserver及其源码分析 1.网络通信概念 说 ...

  3. 第六篇:python高级之网络编程

    python高级之网络编程   python高级之网络编程 本节内容 网络通信概念 socket编程 socket模块一些方法 聊天socket实现 远程执行命令及上传文件 socketserver及 ...

  4. python运维开发之第八天(socket)

    什么是 Socket? Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求,使主机间或者一台计算机上的进程间可以通讯. soc ...

  5. 减少可执行程序size的三个常用软件

    减少可执行程序size的三个常用软件 linux下面,直接用strip 这个命令 #:strip xxx 可以去掉编译调试信息和各种符号表,能够大大减小可执行程序size windows下面这种exe ...

  6. 10.socket网络编程

    套接字工作流程 先从服务器端说起.服务器端先初始化Socket,然后与端口绑定(bind),对端口进行监听(listen),调用accept阻塞,等待客户端连接.在这时如果有个客户端初始化一个Sock ...

  7. Python Socket通信黏包问题分析及解决方法

    参考:http://www.cnblogs.com/Eva-J/articles/8244551.html#_label5 1.黏包的表现(以客户端远程操作服务端命令为例) 注:只有在TCP协议通信的 ...

  8. 网络编程基础之粘包现象与UDP协议

    一.粘包现象原理分析 1.我们先来看几行代码,从现象来分析: 测试程序分为两部分,分别是服务端和客户端 服务端.py #!/usr/bin/env python3 #-*- coding:utf-8 ...

  9. mac快捷键整理以及node的基本使用

    该文章是作为日常积累和整理,又是好久没有整理node的相关知识了,最近翻了翻自己的有道云笔记,怎一个乱字了的,重新整理下. 一.Mac常用快捷键 Command+M: 最小化窗口 Command+T: ...

随机推荐

  1. Swift语法学习之 类和结构体

    类和结构体 本页包括内容: 类和结构体对照 结构体和枚举是值类型 类是引用类型 类和结构体的选择 集合(collection)类型的赋值与复制行为 与其他编程语言所不同的是,Swift 并不要求你为自 ...

  2. 设计模式C++达到 1.辛格尔顿

    实现类的单个案件的Singleton模式.该系统有一个类只有一个实例,而本实施例是容易的外部访问.所以容易控制的实例的数量,并且节省系统资源. 单的情况下通常与一些非本地静态对象的使用,对于这些对象, ...

  3. NTVS:把Visual Studio变成Node.js IDE 的工具

    NTVS(Node.js Tools for Visual Studio) 运行于VS2012或者VS2013.一些node.js的爱好者已经从PTVS(Python Tools for Visual ...

  4. dlmalloc 2.8.6 源代码具体解释(6)

    本文章由vector03原创, 转载请注明出处. 邮箱地址: mmzsmm@163.com, 欢迎来信讨论. 3.4 sys_alloc sys_alloc是dlmalloc中向系统获取内存的主要接口 ...

  5. * 类描写叙述:字符串工具类 类名称:String_U

    /****************************************** * 类描写叙述:字符串工具类 类名称:String_U * ************************** ...

  6. 解决IIS7中出现An error occurred on the server when processing the URL错误提示的方法

    在IIS7上配置一个asp程序,出现了一个错如提示: An error occurred on the server when processing the URL. Please contact t ...

  7. 【Android小应用】强迫症头像生成器

    近期一段时间在微信朋友圈,在头像的右上角添加一个红底白字的数字,让非常多有强迫症的同学点个不停,深深佩服发明这样的头像的姑娘,太机智了.但它不能自己定义,这是硬伤.... 这是朋友圈里的效果图: 这个 ...

  8. 模拟Vue之数据驱动3

    一.前言 在"模拟Vue之数据驱动2"中,我们实现了个Observer构造函数,通过它可以达到监听已有数据data中的所有属性. 但,倘若我们想在某个对象中,新增某个属性呢? 如下 ...

  9. IOS计划 分析

    1.基本介绍 IOS苹果公司iPhone.iPod touch和iPad操作系统和其他设备的发展. 2.知识点 1.IOS系统 iPhone OS(现在所谓的iOS)这是iPhone, iPod to ...

  10. POJ 2996 & 2993 国际象棋布局 模拟

    Description Your task is to read a picture of a chessboard position and print it in the chess notati ...