|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
7 p; J# d) t' x2 a5 z; U
Linux文件描述符:默认打开三个文件描述符:标准输入standard input 0,正确输出standard output 1,错误输出:error output 2, p( w0 ?8 L: y5 J. z' e8 z
* q- ]; O- D' H6 B8 _6 o
输出重定向. Z X( a" D5 m6 H! w) \
' L1 e$ |$ ]( h* G/ K% p
command-line1 [1-n] > file或文件操作符或设备 v- A& P( x- T3 G3 E: i: u1 F
# G9 e+ Z9 z5 u/ R6 T. [8 ^7 V首先是判断>右边的文件是否存在,存在的话就首先删除然后再创建,无论左边命令执行是否成功,右边文件都会变为空。使用>>为文件的追加方式。
+ _2 e. P' w, d' c# Z) o
2 f7 z2 h) p7 ?, l' @ ~- [Unix@17:18:57 ~]$ls > a.txt
- [Unix@17:19:11 ~]$cat a.txt
- a.txt
- cpp
- ctest
- Makefile
- network
- shell
- socket
- test
- thread
1 \; d& ?$ ~6 ~8 {; Z
6 w; o( u; |/ F! i& `' e
' M8 W: M$ G* }& C. B5 A5 ^输入重定向5 w. v1 D! Q6 I" n- }
- N- B1 Y3 b1 M7 ]. @+ g6 H' {command-line [n] <file或文件描述符&设备. @6 Q& z% Y2 }% V0 h) K% b
5 o, ^$ U( u3 q6 F4 _5 G! P
- [Unix@17:20:59 ~]$cat>a<a.txt
- [Unix@17:21:36 ~]$cat a
- a.txt
- cpp
- ctest
- Makefile
- network
- shell
- socket
- test
- thread! w: l9 E, s$ Z! c6 O
. \7 q% P4 Q6 v& [7 t* c& f" U+ s( f+ k& g/ X
exec绑定重定向; c! |$ U; a* r1 O1 j
! g. C, Z' o6 g, wexec 文件描述符[n] <或> file或文件描述符或设备
7 h' N: D; Z t0 x& f' g
% H% @ ]: k) ~* j! R; q, z- Z在上面讲的输入,输出重定向 将输入,输出绑定文件或设备后,只对当前那条指令是有效的。如果需要在绑定之后,接下来的所有命令都支持的话,就需要用exec命令。 z! J, s( H$ r# c: e4 u: Y2 ~
- ?5 F1 n( V6 k' |* H6 N- [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
* O. b' y. u# d6 K1 e# G , J: e& O w: v" R
( V# d8 H. E- N2 G2 r9 ~2 ~% c |
|