使用以下腳本訪問CSV項目。使用awk逐個處理CSV項目
#!/bin/bash
awk -F "|" 'NR > 0 {print $1}' UserAgents.csv
運行腳本時,我得到正確的輸出,即CSV第一個'列'中的整個值集被打印到終端。我想添加的是逐個讀取這些項目,並對它們執行一些操作,例如將它們與一個字符串連接起來,然後逐個輸出它們(文件,管道或終端)。
使用以下腳本訪問CSV項目。使用awk逐個處理CSV項目
#!/bin/bash
awk -F "|" 'NR > 0 {print $1}' UserAgents.csv
運行腳本時,我得到正確的輸出,即CSV第一個'列'中的整個值集被打印到終端。我想添加的是逐個讀取這些項目,並對它們執行一些操作,例如將它們與一個字符串連接起來,然後逐個輸出它們(文件,管道或終端)。
這應該說清楚你的awk腳本是這樣做的:
awk -F '|' '{
print NR, NF, $1, "with some trailing text"
}' UserAgents.csv
感謝它幫助我理解awk處理CSV文件中的條目的方式。儘管我最終使用了IFS作爲我的腳本的最終版本。 – 2013-04-23 19:28:02
「我最終使用IFS作爲我的腳本的最終版本」是什麼意思? awk中沒有IFS bultin變量,但有shell。 – 2013-04-23 19:29:41
對不起,我的意思是我最終沒有使用awk。 – 2013-04-25 10:08:52
你'{打印$ 1}得到每個項目執行''一個由one'。那麼爲什麼不在那裏做這個動作呢,試着'打印'你好那裏「$ 1'不是作爲回答,因爲我覺得在問題 – abasu 2013-04-23 15:49:04
'NR> 0'中可能還有別的東西 - 如果那是忽略空白行,它應該是'NF> 0' – suspectus 2013-04-23 15:58:19