[UNIX C学习笔记] 输入/输出【标准输入--->>标准输出】
预备知识:
1、每个进程启动时 都会打开三个文件描述符 标准输入、标准输出、标准错误。默认的标准输入是键盘、标准输出和标准错误是屏幕。(上一次我们已经说过UNIX中设备也是文件)
2、在用命令行启动进程时,可以将这三个文件描述符重定向。具体方法见:http://www.php100.com/html/webkaifa/Linux/2010/0430/6470.html
3、使用到的系统调用:
ssize_t read(int fd, void *buf, size_t count); // 从文件fd 读取count大小 到buf开头的内存里面
ssize_t write(int fd, const void *buf, size_t count); // 从buf开头的内存 读取count大写 到文件fd中
###从键盘输入,输出到屏幕
[/home/maomao/Study/UNIX_C/chap_1]./a.out
asdasdasdasd
asdasdasdasd
###从键盘输入,输出到文件
[/home/maomao/Study/UNIX_C/chap_1]./a.out >Makefile1
sadsadsad
asdsadsadasdsa
asd
asdasd
[/home/maomao/Study/UNIX_C/chap_1]cat Makefile1
sadsadsad
asdsadsadasdsa
asd
asdasd
###从文件输入,输出到屏幕
[/home/maomao/Study/UNIX_C/chap_1]./a.out <Makefile1
sadsadsad
asdsadsadasdsa
asd
asdasd
###从文件输入,输出到文件
[/home/maomao/Study/UNIX_C/chap_1]./a.out <Makefile >Makefile1
[/home/maomao/Study/UNIX_C/chap_1]cat Makefile1
include ../Makefile.incl
objects=main.o
include ../Makefile.incl.tail
1、每个进程启动时 都会打开三个文件描述符 标准输入、标准输出、标准错误。默认的标准输入是键盘、标准输出和标准错误是屏幕。(上一次我们已经说过UNIX中设备也是文件)
2、在用命令行启动进程时,可以将这三个文件描述符重定向。具体方法见:http://www.php100.com/html/webkaifa/Linux/2010/0430/6470.html
3、使用到的系统调用:
ssize_t read(int fd, void *buf, size_t count); // 从文件fd 读取count大小 到buf开头的内存里面
ssize_t write(int fd, const void *buf, size_t count); // 从buf开头的内存 读取count大写 到文件fd中
int iCount;
char sBuf[BUFERSIZE];
while((iCount=read(STDIN_FILENO, sBuf, BUFERSIZE))>0)
if(write(STDOUT_FILENO, sBuf, iCount)!=iCount)
{
printf("write eror\n");
exit(1);
}
if(iCount<0)
printf("read error\n"); ###从键盘输入,输出到屏幕
[/home/maomao/Study/UNIX_C/chap_1]./a.out
asdasdasdasd
asdasdasdasd
###从键盘输入,输出到文件
[/home/maomao/Study/UNIX_C/chap_1]./a.out >Makefile1
sadsadsad
asdsadsadasdsa
asd
asdasd
[/home/maomao/Study/UNIX_C/chap_1]cat Makefile1
sadsadsad
asdsadsadasdsa
asd
asdasd
###从文件输入,输出到屏幕
[/home/maomao/Study/UNIX_C/chap_1]./a.out <Makefile1
sadsadsad
asdsadsadasdsa
asd
asdasd
###从文件输入,输出到文件
[/home/maomao/Study/UNIX_C/chap_1]./a.out <Makefile >Makefile1
[/home/maomao/Study/UNIX_C/chap_1]cat Makefile1
include ../Makefile.incl
objects=main.o
include ../Makefile.incl.tail
...全文
相关推荐
Windows cmd命令行输入输出重定向问题
在CMD中,输入输出重定向主要涉及到三个核心概念:标准输入(stdin)、标准输出(stdout)和标准错误输出(stderr)。`>` 和 `>>` 符号用于输出重定向。
Shell 输入/输出重定向
"Shell 输入/输出重定向是Unix/Linux shell中的基本功能,允许用户改变命令的默认输入来源和输出目标。通常,命令从标准输入(stdin,文件描述符0)读取,向标准输出(stdout
重定向标准输出STDOUT的demo
在IT领域,重定向是操作系统提供的一种功能,允许我们改变程序的标准输入、输出和错误流的默认行为。标准输出(STDOUT)通常是指程序运行时输出的信息,如打印在控制台的结果。
Linux操作之输入输出重定向和管道
### Linux操作之输入输出重定向和管道#### 标准输入输出与错误处理在Linux或Unix环境下,标准输入(`stdin`)、标准输出(`stdout`)以及标准错误输出(`stderr`)是非常重要的概念
tee命令 读取标准输入的数据
"tee命令用于读取标准输入的数据,并同时将其输出到标准输出设备以及保存到指定的文件中,这样可以在不打断流程的情况下记录或备份数据。这个命令在Linux和类Unix系统中非常实用,尤其在需要同时处理输


