第1节. 标准输入输出和重定向

  1. 三种I/O设备
  2. 把I/O重定向到文件
  3. 使用管道

标准输入

image-20220112134152169

每打开一个文件,系统都会分配一个数字编号对应该文件,

image-20220112162158230

image-20220112162257443

可见一个文件会有4个描述符与之对应,退出tail后,这里的对应关系就没了。

可以看到tail -f .bashrc,系统分配了一个3的文件描述符-软连接指向。

而0 1 2是输入输出信息对应的设备文件描述符,什么意思,就是你对.bashrc文件进行操作,会存在各种交互信息,正常的,错误的,等等从键盘输入的,打印到屏幕的。

关于输出重定向的小例子

image-20220112163635227

image-20220112163644044

>  # 这是标准输出的重定向

image-20220112165605562

img

image-20220112171026961

以下命令特别的一个:C
ls /data /xxx 2> all.log 1>&2
ls /data /xxx &> all.log
ls /data /xxx 2>&1 all.log   # 打印到屏幕上去了
ls /data /xxx > all.log 2>&1

img

image-20220112171209290

img

img

img

img

以上是标准输出


标准输入

image-20220112172236398

tr的一些用法

tr abcde 123
tr -t abcde 123
tr [:lower:] [:upper:]
tr -d '135'
tr -s 'ace'

img

img

img

img

image-20220112174838292

image-20220112174522621

img

tr就可以和标准输入结合

img

img

img

img

img

所以转换的话,也可以用tr来做

img

img

img

tr可以转换、压缩、删除,也方便了。

img

上图是CTRL+D结束才会看到结果。是除了a、b、c以外的都删了。

单行重定向举例

image-20220112175211057

此时多开一个窗口可见aaa已近写进去了

image-20220112175239247

img

多行重定向

image-20220112175955343

img

img

Copyright 🌹 © oneyearice@126.com 2022 all right reserved,powered by Gitbook文档更新时间: 2024-07-28 14:48:00

results matching ""

    No results matching ""