|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
* B7 B0 W% e4 U6 d! ?# e
Linux文件描述符:默认打开三个文件描述符:标准输入standard input 0,正确输出standard output 1,错误输出:error output 28 F h# W% x: ?* J
3 A5 @3 u7 b5 u) M6 B
输出重定向
1 |8 |5 r1 Q, P2 `& ?3 s: e7 O9 l4 }1 [/ c. z7 e
command-line1 [1-n] > file或文件操作符或设备
3 B$ D8 a. Y, o, i$ ^; }+ [/ V0 M: V1 v1 j0 [7 G$ H" c& K/ h. a
首先是判断>右边的文件是否存在,存在的话就首先删除然后再创建,无论左边命令执行是否成功,右边文件都会变为空。使用>>为文件的追加方式。* a" w: x5 c% q9 t" G
. h& Y/ D' i: }# O e# W- [Unix@17:18:57 ~]$ls > a.txt
- [Unix@17:19:11 ~]$cat a.txt
- a.txt
- cpp
- ctest
- Makefile
- network
- shell
- socket
- test
- thread1 ]3 u7 n6 ^" g; E( W5 J
0 P. G o$ ]" T! R; K6 S2 W8 D3 i4 \6 Z3 k% ]! q/ H+ B
输入重定向7 ~& Z$ K; K1 x e r
7 L, i# e5 m" U( P0 |6 M1 s8 ncommand-line [n] <file或文件描述符&设备
; a9 ~( c! ]% }5 k6 n
% {% d* S4 u* O# V4 q- [Unix@17:20:59 ~]$cat>a<a.txt
- [Unix@17:21:36 ~]$cat a
- a.txt
- cpp
- ctest
- Makefile
- network
- shell
- socket
- test
- thread! {. s, q4 U1 I$ Z, e; S) d" Y
) D- v5 S8 | y6 ?3 Z- y, o
/ R3 |$ k2 F+ K, _0 }7 w
exec绑定重定向7 | S0 n! N' W- D
( P! Q/ M% p: Z& D' v4 L
exec 文件描述符[n] <或> file或文件描述符或设备
* q, `( U7 o& }$ _: a6 d) u7 _. U4 y1 q- p* h4 T9 {) F7 ?1 h
在上面讲的输入,输出重定向 将输入,输出绑定文件或设备后,只对当前那条指令是有效的。如果需要在绑定之后,接下来的所有命令都支持的话,就需要用exec命令。
) d# n- \' k8 t9 [& m# w' |5 `) a2 i: N" @0 \* h
- [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
! Z1 F6 F& }: C& S# Q* q# A
) S6 |% h% c0 E5 N) V4 ~2 ]' A, y3 i! p: \7 e+ M' S
|
|