gpt4 book ai didi

linux - 我在 linux shell 中的命令有一些奇怪的输出

转载 作者:太空宇宙 更新时间:2023-11-04 09:38:11 25 4
gpt4 key购买 nike

我在命令中写了以下内容:

$ cat /bin/ls > blah
$ cat blah blah blah > bbb
$ chmod u+x bbb
$ ./bbb

并且它打印了当前工作目录中的所有文件名。

我的问题是为什么?为什么不是 3 次?

最佳答案

因为 Linux 可执行文件格式 ( ELF ) 不是可以连续复制粘贴三次以获得相同结果的脚本。更准确地说, header 包含一个入口点(将其视为存储 int main() 的地址),这是读取指令的地方。一旦你到达决赛 return 0;或者无论如何,程序停止,即使二进制文件中有更多(结构良好的)二进制垃圾。

TL;DR:别忘了 - /bin/ls是编译后的二进制文件,而不是 shell 脚本。

关于linux - 我在 linux shell 中的命令有一些奇怪的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24311403/

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