如何将此awk命令的输出保存到文件?

时间:2013-02-02 08:28:51

标签: linux awk output

我想将此命令保存到另一个文本:  awk'{print $ 2}' 它从文本中提取。 现在我想保存输出太另一个文本。 感谢

3 个答案:

答案 0 :(得分:27)

awk '{ print $2 }' text.txt > outputfile.txt

> =>这会将STDOUT重定向到文件。如果文件不存在,它将创建它。如果文件存在,它将清除(实际上)内容并将新数据写入其中

>> =>这意味着与上面相同,但如果文件存在,则会向其追加新数据。

例如

$ cat /etc/passwd | awk -F: '{ print $1 }' | tail -10 > output.txt
$ cat output.txt 
_warmd
_dovenull
_netstatistics
_avbdeviced
_krb_krbtgt
_krb_kadmin
_krb_changepw
_krb_kerberos
_krb_anonymous
_assetcache

或者,您可以使用命令tee进行重定向。命令tee会将STDOUT重定向到指定的文件以及终端屏幕

有关shell重定向的更多信息请转到以下链接:

http://www.techtrunch.com/scripting/redirections-and-file-descriptors

答案 1 :(得分:5)

有一种方法可以从awk本身(docs)内完成

➜ cat text.txt
line 1
line 2
line three
line 4 4 4

➜ awk '{print $2}' text.txt
1
2
three
4

➜ awk '{print $2 >"text.out"}' text.txt

➜ cat text.out
1
2
three
4

答案 2 :(得分:0)

尝试此命令。

cat ORGFILENAME.TXT | awk '{print $2}' > SAVENAME.TXT

thx。