|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
$ a; Z ^+ J6 ^6 w. ^0 S' o) eLinux文件描述符:默认打开三个文件描述符:标准输入standard input 0,正确输出standard output 1,错误输出:error output 2 p X# f" @& D. k9 ]
& I( s2 z5 t: ~) u7 a+ O输出重定向
1 o8 ]& B& R' a- u. j. y" @# k; L3 X( \/ }& w; P9 l0 I B: O# R
command-line1 [1-n] > file或文件操作符或设备, \3 \/ m" d4 r1 X
5 p! u9 K5 y- M [& T5 K% G首先是判断>右边的文件是否存在,存在的话就首先删除然后再创建,无论左边命令执行是否成功,右边文件都会变为空。使用>>为文件的追加方式。
- |) O' r& \9 x7 P+ t+ N) D7 l( X9 S: u2 n4 ~
- [Unix@17:18:57 ~]$ls > a.txt
- [Unix@17:19:11 ~]$cat a.txt
- a.txt
- cpp
- ctest
- Makefile
- network
- shell
- socket
- test
- thread |2 O9 ]' |/ ? I
0 u0 f3 u. {$ E3 x- `7 X4 \! [8 }1 u9 A! V' t
输入重定向( s/ C0 a/ I5 K4 r p$ o4 P# ]
2 \: |- i) \! W' }0 |! g; Ucommand-line [n] <file或文件描述符&设备
. Z) u% M" K. v" V; ^
" Q2 a: X0 n h& j- [Unix@17:20:59 ~]$cat>a<a.txt
- [Unix@17:21:36 ~]$cat a
- a.txt
- cpp
- ctest
- Makefile
- network
- shell
- socket
- test
- thread' |) A/ x: M8 K7 ?- @% a
) J0 h8 M8 P- Y# b( ~6 ]# \2 n* l' V) ]' {. U; k- f
exec绑定重定向# \% |$ B0 r" a3 o6 x% W
) \* M% R; p' G1 s5 ?
exec 文件描述符[n] <或> file或文件描述符或设备
0 o2 Q: F% U' `; m1 p- z2 z% X# A4 D* D" m. A' r& Y
在上面讲的输入,输出重定向 将输入,输出绑定文件或设备后,只对当前那条指令是有效的。如果需要在绑定之后,接下来的所有命令都支持的话,就需要用exec命令。3 B3 i5 a2 i. R1 O+ {
1 Q& u/ M% o6 _3 v8 X1 W- [Unix@17:26:02 ~]$exec 1>a.txt
- [Unix@17:26:11 ~]$ls -al
- [Unix@17:26:16 ~]$exec 1>/dev/tty #恢复标准输出
- [Unix@17:26:25 ~]$ls
- a.txt cpp ctest Makefile network shell socket test thread
- y* |: Q5 v3 X$ p/ M
" m: W) O0 n% D! q) H: x x: R4 \, C [: {* Y
|
|