Linux shell命令反编译

3
这个问题是Linux如何定义自定义Shell命令的反向问题。
我知道我们可以使用man/info/help/?来阅读大多数命令的文档。有没有办法"反编译"任何shell命令并了解它的执行方式?

7
只需下载代码:https://ftp.gnu.org/gnu/bash/ 并查看它的功能。无需反编译任何内容,Linux 是开源的。 - rlib
2
bash -x shell-script(或通常的anyshell -x shell-script)是否提供您所需的信息?它告诉您脚本执行的命令以及它们的参数。但是您可能正在寻找其他内容。 - Jonathan Leffler
bash -x没有工作,我得到了这个错误: bash -x ls /bin/ls: /bin/ls: 无法执行二进制文件 - Amit Mahajan
1
bash -xsh -x 将尝试在 shell 脚本 运行时提供逐行调试信息。可以在脚本内使用 set -xset +x 分别启用或禁用它。 - Petr Skocik
1个回答

5

使用strace调用它以查看它与内核的交互。如果你真的想阅读汇编代码,可以使用objdump -d


非常感谢,它工作得很好,还有其他工具或文档吗?我很兴奋地学习内核级编程。 - Amit Mahajan
1
有一些典型的C语言工具(如make、gdb、valgrind和perf),文档方面则有内核树中的manpages和Documentation/目录,以及关于Unix编程和操作系统设计的书籍。 - Petr Skocik

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接