学习标准I/O和管道的心得体会

重定向、标准输出、标准输入、标准错误、管道的命令整理

默认:0标准输入 1标准输出 2标准错误
默认是012 更改默认的就叫重定向

【重定向】
重定向最基础的是标准输出 让他输出到别的地方就可以
1
(标准输出) >
1:原来ls 输出到 tty /dev/pts/0 另一个窗口是/dev/pts/1 使用:
2:ls > /etc/pts/1 执行结果跑到另外一个窗口了

QQ截图20171120192430

QQ截图20171120192442

> 把标准输出重定向到某一个文件/后面跟目的文件
> f1 创建一个空文件 实质上就是前面都是空定向到f1

QQ截图20171120192621

 

tree -d /etc/ > /app/tree.log 把/ /的tree输出到后续

QQ截图20171120192831

> 两个大于号 追加 不覆盖 >>f1创建f1如果存在也不会覆盖

QQ截图20171120192953

`hostname` 主机名 `uname -r`内核

QQ截图20171120193042
set -C 设置禁止覆盖,可以追加

QQ截图20171120193143
>| 强制覆盖
set +C 又可以覆盖

QQ截图20171120193418

2
(标准错误) 2>
ls nofiel  2> /app/f2

QQ截图20171120193942

3  &> 错误对的 都放到一个文件里去
多个文件都想结果输入到一个文件
( ls;pwe;hostname ) >> /app/f1 前面加括号
(errcmd;hostname )&> /app/f1

QQ截图20171120194509
(errcmd;hostname )> /app/ture 2> /app/error

QQ截图20171120195206
errcmd;hostname )> /app/ture 2>&1

QQ截图20171120195339

/dev/null这个文件是空 不要的可以定向到他

QQ截图20171120195522

(echo error 1>&2) > /dev/null 会输出error
1>&2 会吧标准正常定义成标准错误输出的命令
2>&1 把错误错误定义成标准正确输出
&>>都支持累加

QQ截图20171120195940

4 (标准输入)tr

tr 1 a 把输入的1 替换成a
tr 123 ab
位数不同 默认吧 23 都替换成b
tr -t 123 ab
-t 截断 忽略3了
tr ‘1-9’ ‘a-i’

QQ截图20171120200319
【标准输入】的重定向 < f1 小于号 后面跟文件名
tr -d ‘a-z'< f1 -d 删除 f1文件的小写字母

QQ截图20171120200700

tr -d ‘a-z'< f1 > /app/f3 处理的文件重定向到f3

QQ截图20171120200758
tr -s ‘a’ 处理重叠的字母压缩掉

QQ截图20171120201224
-c 取反tr -dc `a` 除了a 之外别的都删除 ctrl+D

QQ截图20171120201550
tr -dc `a\n` 保留 回车作用

QQ截图20171120202042
tr `\n` ` `< f1 处理f1文件中的换行

QQ截图20171120202143
seq 1 10 输出1-10 竖排 ,然后替换‘\n’ ‘ ‘
QQ截图20171120203841

mail -s hi~ ma xxxxxxxxx 发邮件给某个用户
标题 哪个用户 内容

QQ截图20171120204539
cat > f1 单行重定向
cat > f1 <<EOF 多行重定向 EOF为终止符
mail -s hi~ `whoami`<<EOF
>HI~$USER
>TESE
>EOF
【管道】
连接标准输入输出的命令间隔
命令1|命令2|命令3
| 管道重定向了前命令的标准输出
error 2>&1| tr ‘a-z’ A-Z | tr -d O
|more |less
tar -cvf – /home | tar -xvf –
将/home了吗的文件打包命名为- 传到后面再解压
tar -cvf 打包 tar -xvf 解包

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/88762

赞 (0)
马马
上一篇 2017-11-20 20:47
下一篇 2017-11-20 21:05

相关推荐

  • 第一天上课

                      2016.10.11 第一天上课 上课环境安排 电脑IP安排 学生IP地址安排     上课软件安装    虚拟机安装 操作系统发展史    第一代计算机:电子管计算机&nb…

    Linux干货 2016-10-18
  • 马哥教育网络班22期第二周课程练习1-未闻花名

    1、Linux管理文件和目录的命令 命令 功能 命令 功能 pwd 显示当前目录 ls 查看目录下的内容 cd 改变所在目录 cat 显示文件的内容 grep 在文件中查找某字符 cp 复制文件 touch 创建文件 mv 移动文件 rm 删除文件 rmdir 删除目录 1.1 pwd命令 该命令的英文解释为print working directory(打…

    Linux干货 2016-08-29
  • 文件查找

    文件查找     一.文件查找locate和find 1.     locate命令 非实时查找( 数据库查找) 查询系统上预建的文件索引数据库 依赖于事先构建 的索引 索引的构建是在系统较为空闲时自动进行( 周期性任务) 管理员手动更新数据库(updatedb) 索引构建过程需要遍历整个根文件系统…

    Linux干货 2017-08-12
  • 压缩、解压缩及归档工具

    压缩、解压缩及归档工具 一、杂项知识整理 1、find -iname 忽略大小写;     -inum 查找指定inode号的文件;  find 在有条件判断的时候,如果不加括号,最后的命令会被当成以为第二个条件之后的:例 [root@localhost shelltest]# find&…

    Linux干货 2016-08-18
  • SQL优化大全

    1. 优化SQL步骤 1. 通过 show status和应用特点了解各种 SQL的执行频率        通过 SHOW STATUS 可以提供服务器状态信息,也可以使用 mysqladmin extende d-status 命令获得。 SHOW STATUS 可以根据需要显示 session 级别的统计结果和 g…

    Linux干货 2015-04-13
  • 0809linux基础小记(sed和vim用法)

    sed  [options] ‘scripts’ inputfile -n: 不输出模式空间内容的自动打印 -e: 多点编辑 -f:从指定文件中读取编辑脚本 -i:原处编辑 scripts: ’地址命令’ 地址定界: (1)  不给地址:对全文进行处理 (2)  单地址: #:  指定的行 例: sed '2…

    Linux干货 2016-08-11