三、输入输出重定向及管道
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. Spring 环境搭建

    1.导包 2.编写Helloworld程序 package cn.test.helloWorld; public class HelloWorld { public void sayHello(){ ...

  2. 【windows开发实现记事本程序——逻辑篇1】

    1. 主要内容 从本节开始介绍windows开发实现记事本程序的逻辑实现部分.本节的主要内容有以下3点: 1. 主窗口定义  -- 主要介绍记事本主界面窗口对应的窗口类及实现方案 2. RichEdi ...

  3. C语言的printf输出格式控制

    C语言的printf输出格式控制 printf大家都耳熟能详,但是能真正将其用法弄透的估计很少见. 转一篇,改天整理. 1.转换说明符 %a(%A)     浮点数.十六进制数字和p-(P-)记数法( ...

  4. underscorejs-where学习

    2.7 where 2.7.1 语法: _.where(list, predicate) 2.7.2 说明: 对list集合的每个对象依次与predicate对象进行匹配,返回一个数组(数组为匹配成功 ...

  5. 自动化构建工具gulp

    1.优点 1.1 易于使用 通过代码优于配置的策略,gulp让简单的任务简单,复杂的任务可管理 1.2 构建快速 利用node.js流的威力,你可以快速构建项目并减少频繁的IO操作 1.3 插件高质 ...

  6. canvas 背景填充

    这儿介绍canvas的ccreatePattern函数, context.createPattern(Image,"repeat"),还可以repeat-x,reapter-y 还 ...

  7. JS笔记1

    1.每个函数对象都有一个length属性,表示该函数期望接收的参数个数.它与函数的arguments不同,arguments.length表示函数实际接收的参数个数. 2.javascript 中有五 ...

  8. windows下Django 部署到Apache24的配置

    1.首先下载最新版Apachehttp://httpd.apache.org/download.cgi#apache24,目前官方以不提供windows msi安装包,下载好的直接解压至C盘即可,ap ...

  9. Cmakelist.txt

    在LINUX下面编程需要注意的是,需要自己配置链接库,比如 TARGET_LINK_LIBRARIES(),需要把自己要加的库加进去

  10. Memcached源码分析——process_command函数解析

    以下为个人笔记 /** * process_command 在memcached中是用来处理用户发送的命令的, * 包括get set,add,delete,replace,stats,flush_a ...