您的位置:首页 > 运维架构 > Linux

记 Linux 学习知识总结 -- 寒江老师视频(五) - 过滤器及管道

2011-11-22 20:32 507 查看

Linux应用工具: 交互工具,编辑器,过滤器

过滤器

输入:过滤器的数据来源(键盘) 标准输入 stdin(0)

输出:过滤器的数据去向(终端屏幕) 标准输出stdout(1)

错误输出:标准错误输出stderr(2)



输入输出的文件目录: ls -l /dev/std*



输入重定向

使用 < 来重定向输入源

tr 'A-Z' 'a-z' < 文件名 把文件里面的大写字母都改成小写字母



写入文件 使用 > 改变数据目标

如 cat > cat.file <<! 向cat.file文件写入数据 如果遇到!就停止输入退出

ls -l > listfile 以长模式显示,然后写入listfile文件

而且 listfile 文件如果有内容会被覆盖掉

我们可以使用 >> 将输出追加入文件



错误输出重定向

默认情况下,系统报错会显示到终端屏幕上

使用2>将报错讯息重定向入一个文件

同理 用2>>可以追加入文件



可以使用如下命令一次性的将错误和正确信息重定向到两文件里

find /etc -name passwd 2> stderr > stdout



使用&>将所有输入都送向同一个地方

find /etc -name passwd &> 文件名

==等同于

find /etc -name passwd 文件名 2>&1

2> 错误输出 1表示输入



管道

使用|将前一个过滤器的输出直接送入后一个过滤器的输入

ls -l /etc | more

把ls -l得到的结果集通过管道传递给more,more有翻页的功能



允许多重管道

ls -l /etc | more | grep fstab

more得到的结果集通过管道传递给命令grep,截取出fstab文件



echo "hello" > filea

cat < filea > fileb 把文件filea复制到fileb

cat file.* > file 将数个file小文件合并成一个文件

注意管道前过滤器的输出与管道后过滤器的输入数据类型匹配



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: