main.c内容
解释器文件及其相关文件
效果演示
关于execl中的第二个参数有些不太明白,假如把第二个参数由"test"改成"aaa",结果没有影响,第二个参数貌似没有被读取
然后用另外一个类似的程序结果就不一样
运行结果如下,程序读取了第二个参数
第二个程序与第一个程序有一点不同,就是execl函数中的第一个参数。在程序一中,第一个参数是一个纯文本文件,而第二个程序中execl的第一个参数是编译好的二进制文件。推测可能是因为这两点导致execl中的第二个参数的读取与否。于是尝试了第三个程序。
将之与第四个程序比较
第四个程序
第四个程序的效果,读取了第一个参数,但书没有读取第二个参数。
第五个程序,发现出去awk这个命令,只要execl的第一个参数是纯文本,且其中包含可执行文件时(有#!解释器),将会抛弃第二个参数;当execl中的第一个参数就是可执行文件的时候,读取后面的所有参数。
个人观点,个人笔记,仅供参考。