码迷,mamicode.com
首页 > 系统相关 > 详细

linux初级学习笔记九:linux I/O管理,重定向及管道!(视频序号:04_3)

时间:2018-05-15 19:35:25      阅读:225      评论:0      收藏:0      [点我收藏+]

标签:style   不同   文档   output   学习   如何   bash   tab   echo   

本节学习的命令:tr,tee,wc

本节学习的技能:

      计算机的组成

      I/O管理及重定向

        管道的使用

 

知识点九:管理及IO重定向(4_3)

计算机组成:

  运算器、控制器: CPU

  存储器:RAM

  输入设备/输出设备

 

  程序:指令和数据

    控制器:读取指令,并在指令的控制下读取要进行的运算和数据

    运算器:

    存储器:

地址总线:内存寻址

数据总线:传输数据

控制总结:控制指令数据

寄存器:CPU暂时存储器

 

I/O:(如:硬盘,显示器,鼠标等)

  INPUT设备:输入设备

  OUTPUT设备:输出设备

  系统默认设备设定:

    默认输出设备:标准输出,STDOUT, 1

    默认输入设备:标准输入, STDIN, 0

    标准错误输出:STDERR, 2(与上是不同的数据流)

      标准输入:键盘

      标准输出和错误输出:显示器

 

I/O重定向:

  Linux:

    >:输出重定向符号:

      >: 覆盖输出

      >>:追加输出

      set -C: 禁止对已经存在文件使用覆盖重定向;

        强制覆盖输出,则使用 >|

      set +C: 关闭上述功能

 

    2>: 重定向错误输出

      2>>: 追加方式

    &>: 重定向标准输出或错误输出至同一个文件。

 

    <:输入重定向符号:

tr a-z A-Z < /etc/profile

    <<:Here Document 在此处生成文档

cat << END
The first line,
The second line.
END

cat >>/etc/myfile.txt <<EOF
The first line,
The second line.
EOF

cat /etc/myfile.txt

 

 

管道:

  前一个命令的输出,作为后一个命令的输入

    格式:命令1 | 命令2 | 命令3 | ...

--管道
echo hello word
echo hello word | tr a-z A-Z‘ --把hello word转成大写并输出

echo redhat | passwd --stdin hive

cut -d: -f1 /etc/passwd | sort | tr a-z A-Z‘ --把passwd文件的用户名(1列)排序并转成大写

ls /var | tr a-z A-Z

----------------tee
从标准输入读取数据,并且发送至标准输出和文件
echo "hello word" | tee /tmp/hello.out --把hello word 发送至标准输出并保存在文件中

----------------wc
--显示某一个文件行数
wc -l /etc/passwd                     --不仅显示了文件的行数还显示了文件名
wc -l /etc/passwd | cut -d  -f1     --实现了
cat /etc/passwd | wc -l

--显示目录的行数
ls /usr/bin | wc -l

 

课后作业:

练习:
1、统计/usr/bin/目录下的文件个数;
# ls /usr/bin | wc -l
2、取出当前系统上所有用户的shell,要求,每种shell只显示一次,并且按顺序进行显示;
# cut -d: -f7 /etc/passwd | sort -u
3、思考:如何显示/var/log目录下每个文件的内容类型?
# file /var/log/*
# cd /var/log/ | file `ls /var/log/`
4、取出/etc/inittab文件的第6行;
# head -6 /etc/inittab | tail -1
5、取出/etc/passwd文件中倒数第9个用户的用户名和shell,显示到屏幕上并将其保存至/tmp/users文件中;
# tail -9 /etc/passwd | head -1 | cut -d: -f1,7 | tee /tmp/users
6、显示/etc目录下所有以pa开头的文件,并统计其个数;
# ls -d /etc/pa* | wc -l
7、不使用文本编辑器,将alias cls=clear一行内容添加至当前用户的.bashrc文件中;
# echo "alias cls=clear" >> ~/.bashrc

 

linux初级学习笔记九:linux I/O管理,重定向及管道!(视频序号:04_3)

标签:style   不同   文档   output   学习   如何   bash   tab   echo   

原文地址:https://www.cnblogs.com/darwinli/p/9042356.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!