Board logo

标题: 在UNIX和Windows系统上重定向 [打印本页]

作者: happem    时间: 2012-6-26 16:01     标题: 在UNIX和Windows系统上重定向

一般情况下,程序的输入来自键盘,而且程序的输出将显示在显示器上,在多数计算机系统中,特别是UNIX和Windows系统,可以将输入重定向到文件,将输出重定向到文件。这两种形式的重定向都可以使用标准库的文件处理功能来实现。

有几种方式可以从UNIX命令行上重定向输入和输出,以可执行文件sum为例,它每次输入一个整数,并计算值的总和,至至遇到文件结束符,然后输出结果,一般情况下,用户从键盘输入整数,并通过输入文件结束组合健来说明没有其他的值需要输入了。利用输入重定向,需要输入的数据可以存储在文件中。例如,如果数据存储在文件Input中,则命令行:


$sun<INPUT

首先执行程序sum,然后在输入重定向符号的作用下将文件input中的数据作为程序的输入。Windows系统上的输入重定向是类似的情况。
注意,-$是UNIX命令行提示符,学生通常会发现很难理解的是,重定向是操作系统功能,而不是C功能。
输入重定向的第二种方法就是管道定向。利用管道可以使一个程序的输出重定向为另一个程序的输入。假设程序random输出一系列随机整数;而通过下列UNIX命令行,random的输出可以通过“管道”直接定向到程序sum;

$random|sum

这将计算random产生的整数的总和。可以在UNIX和windows中使用管道。

通过使用输出重定向符号,可以将程序输出重定向到文件,例如,要将程序random的输出重定向到文件out,可以使用:


$random>out

最后,使用追加输出符号可以将程序输出追加到现有文件的末尾,例如,要将程序random的输出追加到前面命令行所创建的文件out的末尾,可以使用命令行:
源地址:http://www.lirenedu.org/index.php?ack=xinwen&id=1096
</INPUT




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0