4

试图在我的 AWK 代码中找到所有唯一制造商的列表。我使用以下命令成功地将它们从 CSV 中提取出来,并输出到换行符分隔的文本文件,以便将来将 php 导入到 Magento:

awk 'BEGIN {FS=";";ORS="\n";}a[$33]++==0 {print $33}' ./rsrimport/IMPORT.csv >OUTPUT.txt

输出这个:

"manufacturer"
"5.11 Tactical"
"Advantage Arms"
"Advanced Armament Corp"
"Ultra Dot"
"American Classic"
"AccuSharp"
"Adams Arms"
"American Defense Mfg."
"Advanced Technology"
"A&G"
"Aimpoint"
""
"Arsenal, Inc."
"Allen"
"AmeriGlo"
"Apex Tactical Specialties"
"Armscor"
"Armalite"
"A.R.M.S., Inc."
"ASP"

我想做的是三方面的:

  1. 去掉双引号
  2. 删除第一行(这是文件的标题)
  3. 消除任何空白(带“”的行)

一直在为此苦苦挣扎,并阅读了无数论坛。感谢您的任何帮助,您可以提供!

4

2 回答 2

5

用于gsub替代"和使用if条件。

{x=$33; gsub("\"","", x);  if(x && FNR!=1){print x;}}

http://ideone.com/36IwCx

于 2013-01-21T18:59:08.880 回答
2

试试这个

sed -re '1d;s/"//g; /^( \t)*$/ d' temp.txt
于 2013-01-22T01:41:44.167 回答