如果有程序
int main(void)
{
if(lseek(STDIN_FILENO,0,SEEK_CUR)==-1)
printf("can't seek\n");
ele
printf("seek ok");
return 0;
}
cat < /etc/motd | ./a.out和./a.out < /etc/motd有什么区别啊
希望能讲的详细点,谢谢
1 2 3 4 5 6 7 8 9 10 11 | cat < /etc/motd | ./a.out
# 通过 I/O 重定向,将文件作为 cat 的标准输入,由 cat 输出 # 再通过管道作为 a.out 的输入 # a.out 的输入是管道,这个没法 seek
./a.out < /etc/motd
# 通过 I/O 重定向,将文件作为 a.out 的标准输入 # STDIN_FILENO 现在对应的是一个文件,可以 seek |