gpt4 book ai didi

ubuntu - 查看 Linux "executable (application/x-executable)"文件的源代码?

转载 作者:行者123 更新时间:2023-12-04 19:03:28 73 4
gpt4 key购买 nike

在使用 Ubuntu 大约一年之后,这对我来说是第一次。
我接手了一个跟踪维修的汽车服务项目。我可以看到每个文件的完整源代码,但是有一个没有扩展名的文件,但在 Ubuntu 中,属性显示为可执行文件(application/x-executable)。文件中没有像 .sh 这样的扩展名,如果我尝试用 Geany 打开文件,它会说它看起来不像文本文件。如果我在我的 VM 上使用 Visual Studio 打开文件,它看起来像一个二进制文件。 Ubuntu如何知道它是一个没有扩展名的可执行文件(应用程序/x-executable)”文件,我如何查看源代码以查看该文件在做什么?

最佳答案

您需要了解一些概念。

在 Linux 和其他 *nix 中,如果用户对文件具有执行权限,则用户可以执行该文件。

示例可以是 shell 脚本、python 脚本、编译程序和任何其他文件,如果需要,您可以授予图像执行权限(尽管它可能不是很有用):

chmod +x image.jpg

应用程序或程序是用某种语言编码的指令序列,它可能是脚本语言,因此不需要编译,您可以使用任何文本编辑器将其打开为 geany,或者它可能是机器代码(编写的结果编译语言的程序)。在最后一种情况下,程序是一个二进制文件(即一个没有以 ASCII 编码或任何其他对普通文本编辑器有意义的编码的文件)。

您可以使用 hexdump 等命令查看以十六进制编码的二进制程序的字节。或尝试用 objdump 反汇编程序,但看不到原始源代码。

如果您要分析的软件是开源软件并且您从 Ubuntu 存储库下载了它,您可以使用以下命令下载其源代码:
apt-get source name_of_the_package

您可以通过以下方式获取包的名称:
dpkg -S /path/to/the/binary

Linux 和许多其他操作系统中的工具。可以通过文件扩展名或从文件中读取一些特殊字节(很多时候前两个或三个字节就足够了)来检测文件的类型,这些被称为魔数(Magic Number)。

关于ubuntu - 查看 Linux "executable (application/x-executable)"文件的源代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21976873/

73 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com