三、输入输出重定向及管道
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. [转载]Java synchronized详解

    在编写一个类时,如果该类中的代码可能运行于多线程环境下,那么就要考虑同步的问题.在Java中内置了语言级的同步原语--synchronized,这也大大简化了Java中多线程同步的使用.我们首先编写一 ...

  2. 优秀的弹窗插件 jquery.lightbox_me.js

    项目地址: https://github.com/buckwilson/Lightbox_me用法:http://buckwilson.me/lightboxme/ var opt = { 'cent ...

  3. N3292系列资料之RTC介绍

    N3292系列资料之RTC介绍 1 RTC特性 Ø 拥有时间计数器(秒,分,时)和日历计数器,用来计算时间 Ø 绝对定时功能(秒,分,时,日,月,年) Ø 相对定时功能 Ø 支持12小时/24小时模式 ...

  4. PHP添加、更新solr索引

    <?php $options = array ( 'hostname' => 'localhost', 'port' => '8080', 'path'=>'solr/help ...

  5. 14_RHEL7安装mplayer

    这里用nux-dextop仓库来配置 Nux Dextop桌面对CentOS和RHEL 6/7可用.它是一个面对CentOS.RHEL.ScientificLinux的含有许多流行的桌面和多媒体相关的 ...

  6. CSS3圆角详解

    一.CSS3圆角的优点 传统的圆角生成方案,必须使用多张图片作为背景图案.CSS3的出现,使得我们再也不必浪费时间去制作这些图片了,而且还有其他多个优点: * 减少维护的工作量.图片文件的生成.更新. ...

  7. 一个测ip和端口是否联通的工具类

    public class TestIp { public static void main(String[] args) { Socket connect = new Socket(); try { ...

  8. java的占位符

    java占位符的类型: 常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.fo ...

  9. chrome代理服务器设置

    在百度的内网很难访问chrome的相关站点,如果安装一些chrome的插件很不方便,所以呢,研究了一下chrome浏览器的代理模式,FQ安装插件. Chrome设置代理服务器的方法大体有几种: 1. ...

  10. Sequence

    http://poj.org/problem?id=2442 用STL写的时间为:5657MS #include<cstdio> #include<algorithm> #in ...