什么是I/O重定向?
I/O重定向是一个过程,这个过程捕捉一个文件、命令、程序或脚本,甚至代码块的输出,然后把捕捉到的输出作为输入发送给另外一个文件、命令、程序或脚本。
知道这些我们就可以正式进入学习了
在 root命令下输入"tty"
其中/dev/pts/0中0表示当前处于那个终端再打开终端可以看到为/dev/pts/1
一个案例分析,使用date来认识I/O重定向
其中date 是可以显示当前时间,在date命令后面加">"并指向date.txt文件,那么结果就会写入date.txt文件。
文件描述符:
就是内核为了高效管理这些已经被打开的文件所创建的索引,其是一个非负整数(通常是小整数),用于指代被打开的文件,所有执行I/O操作的系统调用都通过文件描述符来实现。同时还规定系统刚刚启动的时候,0是标准输入,1是标准输出,2是标准错误。这意味着如果此时去打开一个新的文件,它的文件描述符会是3,再打开一个文件文件描述符就是4......
明白以上内容我们可以了解输出重定向了和输入重定向
输出重定向
命令行的输出重定向和错误重定向很简单,在命令参数后直接使用“>>”(输出重定向)或“2>”(错误重定向)即可。
输出重定向可以分为正确输出和错误输出
正确输出:1>,1>>等价于>,>>,1可以省略
错误输出:2>,2>>
其中,“>"表示覆盖,”>>"表示追加。
其中第三行第四行可以跳过(因为我自己输入的问题,导致错误)。
接下来具体实例理解
输入重定向
具体案例:
使用grep命令过滤root,没有改变输入端默认为键盘,接着输入重定向到/etc/passwd.
使用dd命令从/dev/zero中读取数据并写入到file01.txt文件,每次1MiB,一共两次
使用输入重定向与输出重定向的方式也可以实现相同的功能
使用at命令创建一个计划任务,从现在开始5分钟后创建用户Linux,可以使用crtl+d结束
如果同时创建多个用户,此方法十分繁琐,使用输入重定向更简单方便
今天暂时学到这里。休息一下哈哈哈哈