Linux

【Linux】重定向

2018-10-27  本文已影响0人  胖佳儿Clara

参考资料:
1.视频课程《Linux运维》
2.书籍PDF版《Linux运维 Web集群实战》
3.https://ryanstutorials.net/linuxtutorial/piping.php
4.学习笔记保存在幕布:这里有完整Linux学习笔记哦~


重定向

管道和重定向的作用是保持数据在程序和文件之间流动。

比如说:通常情况下,我们会在屏幕上显示输出,这在大多数情况下很方便,但有时我们可能希望将其保存到文件中以保存为记录,输入另一个系统或发送给其他人。

大于运算符(>)向命令行指示我们希望程序输出(或发送到STDOUT的任何内容)保存在文件中而不是打印到屏幕上。如果我们重定向到不存在的文件,它将自动为我们创建。但是,如果我们保存到已经存在的文件中,那么它的内容将被清除,然后新的输出保存到它。

如果我们不希望原有文件被覆盖,我们可以使用(>>)运算符将新数据附加到文件中。

(<)及(<<)运算符同理。

而管道(|),该操作符可以将数据从一个程序发送到另一个程序。管道的作用是将左侧程序的输出作为右侧程序的输入。

摘要:

>
将输出保存到文件。
>>
将输出附加到文件。
<
从文件中读取输入。
2>
重定向错误消息。
|
将一个程序的输出作为输入发送到另一个程序。

本文主要介绍重定向及其相关内容。

echo '1 2 3 4' >oldboy.txt 
xargs -n 2 <old​boy.txt ( xargs -n 2意思即为两个一组分两组,<即把oldboy.txt文件的内容输入给左边处理 )
1 2
3 4​​
cat >>/data/oldboy.txt <<EOF (其中cat是命令>>追加输出重定向,把命令放到文件里,然后EOF EOF把内容装到文件里)
i am studying linux
EOF​​​
echo oldgirl 1>a.txt 2>b.txt 
cat b.txt
-bash​​​​ cho: command not found
echo oldgirl 1>a.txt 2>a.txt(正确错误都放一个文件)
echo oldgirl 1>a.txt 2>&1(把错误的输出放到和1的输出一样的里面,此方法为常用方法,推荐方法)
echo oldgirl &>a.txt (把正确错误的全放到a里)
            ​
上一篇下一篇

猜你喜欢

热点阅读