unix cat问题
看unix环境高级编程里51页有句
cat < /etc/motd | ./a.out
查cat后还是不能明白这句话什么意思,谢谢指点。
cat < /etc/motd | ./a.out
查cat后还是不能明白这句话什么意思,谢谢指点。
作者: 河边洗澡 发布时间: 2011-03-01
来源:csdn fox000002 http://topic.csdn.net/u/20081114 ... 5-8c4e0f1edfdd.html
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
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
作者: 河边洗澡 发布时间: 2011-03-01
cat后应该跟cat的目标,没有目标应该由键盘输入;
cat < /etc/motd的意思是连键盘输入也不用了,用/etc/motd的文件内容来代替键盘输入的内容
“|”表示把它送到a.out中去,作为a.out的一个参数。
实际上这句话的意思就是:把motd里面的内容,作为a.out的参数。
cat < /etc/motd的意思是连键盘输入也不用了,用/etc/motd的文件内容来代替键盘输入的内容
“|”表示把它送到a.out中去,作为a.out的一个参数。
实际上这句话的意思就是:把motd里面的内容,作为a.out的参数。
作者: lsstarboy 发布时间: 2011-03-01