Linux学习记录3

Linux给程序提供三种I/O设备:

1、 标准输入(STDIN): -0 默认为接受键盘输入
2、 标准输出(STDOUT):-1 默认为输出到终端窗口
3、 标准错误(STDERR):-2 默认为输出到终端窗口
注:标准错误是解释器辅助输出,并不是命令本身输出。
I/O重定向:改变默认数据流向

重定向

STDOUT和STDERR可以被重定向至文件
格式:命令 操作符号 文件名
原有内容被覆盖:
1.>或1>:将标准输出重定向至文件,文件原内容被覆盖,1>前面的1可以省略。
2.2>: 把标准错误重定向至文件
原有内容保留,其后追加:
1.1>>或1>>:把STDOUT重定向至文件,在文件原有内容后追加
2.2>>: 把标准错误重定向至文件,在文件原有内容后追加

合并STDOUT和STDERR重定向至同一文件:
&>:把STDERR和STDOUT一起重定向至文件,文件原有内容会被覆盖
&>>:把STDERR和STDOUT一起重定向至文件,在文件原有内容后追加
COMMAND > FILE.OUT 2&>1:将STDOUT覆盖重定向至FILE.OUT,并将STDERR转化为STDOUT,结果为STDOUT和STDERR一同被覆盖重定向至FILE.OUT;
COMMAND >> FILE.OUT 2&>1:将STDOUT追加重定向至FILE.OUT,并将STDERR转化为STDERR,结果为STDOUT和STDERR一同被追加重定向至FILE.OUT
set -C: 禁止覆盖重定向
set +C:解除禁止覆盖重定向

重定向标准输入:
COMMAND < FILE.IN
cat < file1 > file2
将file1中的内容覆盖重定向至file2
cat < file1 >> file1
将file1的内容追加重定向至file1,如果不停止该命令会一直循环执行下去。(快速生成大文件)

posted @ 2023-11-27 19:04  chen-jw  阅读(9)  评论(0)    收藏  举报