awk,我是新手这个命令,我知道它可以列出带有条件的文本文件,但我不知道如何在文本之间有“,”时列出它们,你怎么算“,”以1美元计算。
但如果它的电子邮件,电子邮件不会出于某种原因显示,我想也许我应该包括“,”?,我不知道如何解决问题,并且不知道问题是什么。 例如,我想显示customerid和customersname,我将使用:
awk'{print $1,$2}'
Customerid, customersname, email
12312322, MIKE, example@gmail.com
51231221, CALVIN, example2@gmail.com
91234232, LISA, example3@gmail.com
12359432, DICK, example4@gmail.com
94123432, ORAN, example5@gmail.com
63242333, KEVIN, example6@gmail.com
答案 0 :(得分:2)
您想使用逗号作为分隔符吗?像这样使用-F
:
awk -F, '{print $1,$2}'
如果您想将逗号和空格作为分隔符,则可以使用正则表达式:
awk -F',[[:space:]]*' '{print $1,$2}'
答案 1 :(得分:1)
我不确定我是否正确地提出了你的问题。您可以使用-F
命令行选项指定输入字段分隔符:
awk -F, '{print $1, $2}' your.csv
输出:
Customerid customersname
12312322 MIKE
51231221 CALVIN
91234232 LISA
12359432 DICK
94123432 ORAN
63242333 KEVIN
答案 2 :(得分:1)
只需使用FS
:
awk 'BEGIN { FS="," } {print $1,$2}'
来自man awk
:
<强> 7。内置变量强>
The following variables are built-in and initialized before program execution. ... FS splits records into fields as a regular expression. ...
答案 3 :(得分:0)
以下是需要的代码
awk -F "," '{print $1,$2}' input.txt
<强>输出:强>
Customerid, customersname 12312322, MIKE 51231221, CALVIN 91234232, LISA 12359432, DICK 94123432, ORAN 63242333, KEVIN
说明:
-F =字段分隔符
“,”=使用逗号,因为列由
分隔'{print $ 1,$ 2}'=显示第一列和第二列
input.txt =您要传递的文件
希望得到它的帮助。