shell中输入重定向,输出重定向,管道

xiaoxiao2021-02-27  321

什么是文件描述符 1、进程中打开一个文件就会有一个文件描述符 2、文件描述符是一个非负整数 3、系统为每一个进程维护一个文件描述符表(进程级文件描述符) 4、同一个进程里面不同文件描述符可以对应同一个文件(一个文件被打开多次) 5、不同进程的文件描述符可以相同(不影响),可以指向同一个文件,也可以指向不同文件 标准文件描述符 进程启动就打开的文件描述符 0:标准输入文件描述符 1:标准输出文件描述符 2:标准错误文件描述符 重定向输出(包括标准输出,标准错误输出) ls -a >ls.txt 如果不存在ls.txt则创建,存在则覆盖里面内容

ls -a >>ls.txt 如果不存在ls.txt则创建,存在则追加

kill -l 1234 2>dev/null kill -l 1234 2>>dev/null 在>或>>前面加上文件描述符,即可把输出到该文件描述符的内容,定向到指定的文件中

kill -l 1234 >dev/null 2>&1 标准错误流的和标准输入流重定向到同一个文件,用>& 重定向输入 more < text.txt more本来就可以接受文件的参数,这样的意义不大 管道 用于连接进程,可以避免写中间文件 ps | short | more 注意:在linux下通过管道连接的进程可以同时运行 cat mydata.txt | sort | uniq >mydata.txt这样可能会得到一个空文件,因为cat运行前,uniq可能已经清空了mydata.txt的内容,所以不要在命令流中使用相同的文件名字。

转载请注明原文地址: https://www.6miu.com/read-4713.html

最新回复(0)