我想将此命令保存到另一个文本: awk'{print $ 2}' 它从文本中提取。 现在我想保存输出太另一个文本。 感谢
答案 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。