linux重定向的实现机制,linux笔记:管道和重定向机制

**管道通常用来组合不同的命令,实现一个复杂的功能。 (|)

**重定向通常用来保存某命令的输出信息及报错信息,可以用来记录执行结果或保存错误信息到某一指定文件。(>   >>   2>  

1.将终端输出结果重定向到指定文件中。>(覆盖)(错误信息不会被重定向文件中)

[例子1]

wangzheng@ubuntu:~$ echo "wangzheng" >wangzheng.txt

wangzheng@ubuntu:~$ ls

Desktop    Music     Templates   aabbcc    etc.tar.gz           wangzheng.tar

Documents  Pictures  Ubuntu One  abc.txt   examples.desktop.gz  wangzheng.txt

Downloads  Public    Videos      bingfeng  home                 wangzheng.zip

wangzheng@ubuntu:~$ cat wangzheng.txt

wangzheng

[例子2]

wangzheng@ubuntu:~$ ls -l >wangzheng.txt

wangzheng@ubuntu:~$ cat wangzheng.txt

total 149880

drwxr-xr-x 5 wangzheng wangzheng      4096 Jul 10 09:41 Desktop

drwxr-xr-x 2 wangzheng wangzheng      4096 Jul  5 07:19 Documents

drwxr-xr-x 2 wangzheng wangzheng      4096 Jul  9 19:39 Downloads

00:57 wangzheng.zip

...............

2.将终端输出结果重定向到指定文件中。>>(追加)(错误信息不会被重定向文件中)

wangzheng@ubuntu:~$ echo "abcd" >> abc.txt

wangzheng@ubuntu:~$ cat abc.txt

abcd

wangzheng@ubuntu:~$ echo "efghj" >>abc.txt

wangzheng@ubuntu:~$ cat abc.txt

abcd

efghj

wangzheng@ubuntu:~$

3、将报错信息重定向到文件中 (2>),多用于日志文件

wangzheng@ubuntu:~$ ls -l 1234567/ 2>wangzheng.txt

wangzheng@ubuntu:~$ cat wangzheng.txt

ls: cannot access 1234567/: No such file or directory

4.同时保存正确结果和错误信息 (2>&1)#xa0;

5. 标准输入 (

在 /etc/passwd 文件里搜索 带有“wangzheng” 的字符

wangzheng@ubuntu:~$ grep wangzheng  < /etc/passwd

wangzheng:x:1000:1000:Administrator,,,:/home/wangzheng:/bin/bash

wangzheng@ubuntu:~$

6.管道:将一个命令的输出结果当做另一个命令的输入内容 (|)

wangzheng@ubuntu:~$ ls -l | grep wangzheng

drwxr-xr-x 5 wangzheng wangzheng      4096 Jul 10 10:22 Desktop

drwxr-xr-x 2 wangzheng wangzheng      4096 Jul  5 07:19 Documents

drwxr-xr-x 2 wangzheng wangzheng      4096 Jul  9 19:39 Downloads

drwxr-xr-x 2 wangzheng wangzheng      4096 Jul  5 07:19 Music

drwxr-xr-x 4 wangzheng wangzheng      4096 Jul  9 19:21 Pictures

drwxr-xr-x 2 wangzheng wangzheng      4096 Jul  5 07:19 Public

drwxr-xr-x 2 wangzheng wangzheng      4096 Jul  5 07:19 Templates

drwxrwxr-x 2 wangzheng wangzheng      4096 Jul  5 07:03 Ubuntu One

drwxr-xr-x 2 wangzheng wangzheng      4096 Jul  5 07:19 Videos

-rw-rw-r-- 1 wangzheng wangzheng         0 Jul  5 01:26 aabbcc

-rw-rw-r-- 1 wangzheng wangzheng        11 Jul 10 10:00 abc.txt

drwxrwxr-x 2 wangzheng wangzheng      4096 Jul  6 08:38 bingfeng

-rw-rw-r-- 1 wangzheng wangzheng   1296120 Jul  5 01:19 etc.tar.gz

-rw-r--r-- 1 wangzheng wangzheng      3742 Jun 30 09:44 examples.desktop.gz

drwxrwxr-x 3 wangzheng wangzheng      4096 Jul  5 01:16 home

-rw-rw-r-- 1 wangzheng wangzheng 152125440 Jul  5 01:13 wangzheng.tar

-rw-rw-r-- 1 wangzheng wangzheng      1289 Jul 10 10:19 wangzheng.txt

-rw-rw-r-- 1 wangzheng wangzheng      3889 Jul  5 00:57 wangzheng.zip

7. 在根目录下查找wangzheng用户的所有包含wangzheng字符的文件(太多了!)

root@ubuntu:~#  find / -user wangzheng | grep angzheng

...................

root@ubuntu:~# ls -l / |grep home

drwxr-xr-x   3 root root  4096 Jun 30 09:44 home

(将结果追加到 wangzheng.txt 文件中,有点慢哦!)

root@ubuntu:~# find / -user wangzheng >> /home/wangzheng/wangzheng.txt  |grep wangzheng

root@ubuntu:~# find / -user wangzheng >> /home/wangzheng/wangzheng.txt |grep wangzheng

find: `/run/user/wangzheng/gvfs': Permission denied

find: `/proc/7277/task/7277/fd/5': No such file or directory

find: `/proc/7277/task/7277/fdinfo/5': No such file or directory

find: `/proc/7277/fd/5': No such file or directory

find: `/proc/7277/fdinfo/5': No such file or directory

root@ubuntu:~#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值