的输出file /bin/cp
是:
/bin/cp: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=ea4510e2ea94e09894383430c178b21df065faac, stripped
这是什么意思 ?
答案1
让我们逐一分析一下:
/bin/cp
您要传递给命令的程序的名称file
。在本例中,它是cp
用于复制文件和文件夹的程序。ELF 64-bit LSB shared object
:外部程序可以使用此程序的功能。请参阅我的相关问题可执行文件与共享对象x86-64
- 针对 64 位操作系统进行编译version 1 (SYSV)
- 使用 Unix System V 标准澳大利亚商业信息局。查看Linux文件命令:SYSV暗示什么?dynamically linked
- 使用其他程序/库的功能。请参阅 kos 对我的问题的回答。(链接 #1)interpreter /lib64/ld-linux-x86-64.so.2
- 这是将加载可执行文件和程序运行所需的所有库的程序。请参阅 补丁精灵请参阅第一段的简单解释。另请参阅动态链接器在维基百科上for GNU/Linux 2.6.32
-glibc
用于编译该程序的库针对的是 Linux 内核 2.6.32。请参阅linux 命令“文件”显示“适用于 GNU/Linux 2.6.24”BuildID[sha1]=ea4510e2ea94e09894383430c178b21df065faac
- 构建会话的 sha1 hashsum,对开发人员调试程序和查看使用了哪个特定版本的代码非常有用。请参阅BuildID SHA1 是什么意思?stripped
- 不包含调试信息。请参阅Unix 中的剥离和未剥离的可执行文件是什么?