三、输入输出重定向及管道
01.过滤器
  Linux过滤器分三种:
    1.过滤器(重定向只对过滤器有作用)
#gzip a(将a作为输入源,涉及到输入输出)
    2.编辑器
    3.交互式工具
#setup
02.标准输入输出
03.改变标准输出
#ls >(将正确的输出输出去) /tmp/aaa
#ls /tttt 2>(标准的错误的消息) /tmp/aaa(把后边的文件清空,将前边
的文件加入到后边的文件)
#> b (创建新文件)
#> passwd (清空文件)
#find / -name asdfasdfadf > /tmp/findfile 2>&1
#echo aaa >> a(追加到a文件)
#cat > a.txt
hello! this is a test!
good for you
hello world
Ctrl+d(退出)
#cat a.txt
04.输出的种类
正确的信息和错误的信息
#find / -name asdfasdfadf > /tmp/findfile 2>&1(将两类信息:正确的
信息和错误的信息重定向到指定文件)
#find / -name asdfasdfadf &> /tmp/findfile(功能同上)
#echo aaa > a
#cat a
a
#echo aaa >> a
#echo aaa >> a
aaa
aaa
#cat << EEE
>adsfasdfa
>adfasdfasdf
>asdfads
Ctrl+d(或者输入EEE,结束输入)
adsfasdfa
adfasdfasdf
asdfads
05.改变输入
#tr "a-z" "A-Z"
hello
HELLO
#tr "a-z" "A-Z" /etc/passwd
改:
#tr "a-z" "A-Z"(指明输入源) < /etc/passwd
# cat > a.txt <<EEE
>hello
>world
>!
Ctrl+d(EEE)
#cat a.txt
hello
world
!
#vi b.sh
cat > b.txt <<(让系统将一次键盘的全部输入,先送入虚拟的‘当前文
档’,再一次性输入追加到文档尾部) DDD
this is a text
asdfasdf
asdfadsf
asdfadsf
asdfadsf
asdfa
DDD
:wq
#chmod a+x b.sh
#./b.sh /tmp/bbb/b.sh
#./b.sh
#cat b.txt
this is a text
asdfasdf
asdfadsf
asdfadsf
asdfadsf
asdfa
# >(清空) 2>(错误信息重定向) &>(正确和错误信息重定向
) 2>&1(同&>输出重定向)
#< <<(输入重定向)追加
#>>(两个输出重定向)追加
#ls /etc/ |wc -l(包含多少行,多少个文件)
#ls(只是显示出来)
byf sherk todd
#ls /etc/ > a
#cat a
byf
sherk
todd
06.管道
#ls /etc/ -l |(|前边的输出作为后边指令的输入,这就是管道,只能对
过滤器起作用)grep '^d'|wc -l(查看有多少个文件夹)
#ls /etc/ -l | grep '^-'|wc -l (有多少个普通文件)
#ls /etc/ -l | grep '^l'|wc -l  (有多少个连接)
#ls /etc/ -l | grep '^l'|tee(复制从此|位置的前边的输出到bbb文件) 
bbb|wc -l 
07.实例
#tr '"a-m""n-z""A-M""N-Z"' '"N-Z""A-M""n-z""a-m"'
i love you very much
V YBIR LBH IREL ZHPU
#tr '"a-m""n-z""A-M""N-Z"' '"N-Z""A-M""n-z""a-m"' < /etc/passwd 
文件加密,输出重定向成abc.txt
#tr '"a-m""n-z""A-M""N-Z"' '"N-Z""A-M""n-z""a-m"' < /etc/passwd > 
abc.txt
#tr '"a-m""n-z""A-M""N-Z"' '"N-Z""A-M""n-z""a-m"' < /etc/passwd > 
|mail(也是一个过滤器) -s "For you" 312358196@163.com

Linux shell入门基础(三)的更多相关文章

  1. Linux shell入门基础(六)

    六.Shell脚本编程详解 将上述五部分的内容,串联起来,增加对Shell的了解 01.shell脚本 shell: # #perl #python #php #jsp 不同的脚本执行不同的文本,执行 ...

  2. Linux shell入门基础(一)

    Linux shell入门基础(一): 01.增加删除用户: #useradd byf   userdel byf(主目录未删除)  userdel -r byf   该用户的属性:usermod 用 ...

  3. Linux shell入门基础(五)

    五.bash运算及启动脚本 01.使用bash的命令历史 #history …… #set(显示所有的变量) | grep HIS HISTFILE=/root/.bash_history HISTF ...

  4. Linux shell入门基础(八)

    八.shell脚本sed&awk 01.sed的使用 流编辑器-Steam Editor #ed /etc/passwd 1,10p …… 1s/root/byf/p(替换root为byf) ...

  5. Linux shell入门基础(二)

    二.shell对文本的操作 01.查看文本的命令 #cat /etc/passwd(并非对文本文件操作) #tail -5 /etc/passwd(查看末尾5行) #tail -f /var/log/ ...

  6. Linux shell入门基础(七)

    七.bash脚本中的流程控制   条件判断控制   -[]([]中的表达式是否为真)  &&(前边的结果是true的时候执行后边的命令)   ||(前边的结果是false的时候执行后边 ...

  7. Linux shell入门基础(四)

    四.进程优先级前台后台 01.进程控制 #find /name aaa & #ps aux | grep find #updatedb &  #ps aux | grep update ...

  8. 1)Linux程序设计入门--基础知识

    )Linux程序设计入门--基础知识 Linux下C语言编程基础知识 前言: 这篇文章介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将 会学到以下内容: 源程序编译 Makef ...

  9. linux shell 入门

    本文是本人学习linux shell入门收集整理,不完全原创. 参考博文: http://www.cnblogs.com/suyang/archive/2008/05/18/1201990.html ...

随机推荐

  1. python 文件系统

  2. CSS样式的面向对象思想(一)

    今天来谈一谈CSS样式的面向对象写法.顾名思义,面向对象是高级语言具备的特性,主要是为了程序高可复用,解决模块之间的耦合关系,那么像CSS这样的脚本语言是否也可以使用面向对象的思想,来提高代码的可维护 ...

  3. InstallShield安装包中集成第三方安装包的方案选择[转]

      我们在制作安装包时,有些情况下会涉及第三方安装的集成,这里将讨论如何调用安装第三方包,以及需要注意的事项. 第三方安装包的介质类型有很多,主要有:单独的一个Setup.exe,单独的一个msi包, ...

  4. C# 构造函数如何调用父类构造函数或其他构造函数

    class C : B{    C() : base(5)      // call base constructor B(5)    {  }    C(int i) : this()  // ca ...

  5. HDU-1799(组合递推公式)

    HDOJ-1799 - Fighting_Dream M - 暴力求解.打表 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Forma ...

  6. JDBC小结

    老师如是说:有一个规律永远不变,就是量变引起质变,什么时候你吃的盐比我吃的米多,那你就可以教我了…… 1.JDBC是一个标准,是J2EE的一部分:讲tcp时就提到了分层思想,jdbc也是分层,即上层只 ...

  7. CSS中定位position

    毋庸置疑的是,pisition是css中是最重要的属性之一. 一共有四种定位方式,static.relative.absolute.fixed. 默认的定位方式static 页面中所有的元素默认都是s ...

  8. 使用Struts1完成用户登录功能

    1.Struts框架 框架(framework):就是一系列代码和开发模式的整合,使用框架后,所有开发人员都会按照框架提供的规范进行开发,使代码更容易维护和扩展. 使用框架的优点: 1)   易于维护 ...

  9. Web分析日志

    http://www.docin.com/p-649515490.html http://wenku.baidu.com/link?url=kB-83fbl1Zc3Y6U2BYLj-lKMWShe8Z ...

  10. 使用MFC开发有十多年了,结合自身的体会,随便说几句(不能样样都依赖别人,C体系的人,绝对不怕人踢馆)

    挺长时间了吧,这个帖子还没沉下去,使用MFC开发有十多年了,结合自身的体会,随便说几句:1.MFC是一个C++的基础类库,封装了绝大多数的API函数,主要是用来创建带UI的应用程序,服务端程序或着不带 ...