我提供了一個CSV文件,它在單個列中使用空格來表示千位分隔符(例如,11000而不是11,000或11000)。其他列中有有用的空格,所以我只需要修復這一列。使用bash從單個列中刪除空格
我的數據:
Date,Source,Amount
1/1/2013,Ben's Chili Bowl,11 000.90
我需要得到:
Date,Source,Amount
1/1/2013,Ben's Chili Bowl,11000.90
我一直在努力的awk,sed和切,但我不能得到它的工作。
只是爲進一步的信息,'$ NF'可以用'$ N'取代作出改變的任何'nth'列具體 – abasu 2013-05-10 17:14:12
真棒,工作完美,謝謝你肯特!我會四處搜尋,看看它是如何工作的,但如果你不介意給我解釋,我會很感激。 – user2057932 2013-05-10 17:22:11
選項告訴'awk'使用逗號作爲輸入('-F,')和輸出('-v OFS =,')的字段分隔符。 'gsub(/ /,「」,somestring)'在給定的字符串中完全替換空格(這是'/'...'/'之間的空格)('「」')。 NF是(逗號分隔的,感謝'-F,')字段的數量,'$'n是第n個字段,所以'$ NF'意味着該行的最後一個字段。最後的'1'告訴awk在之後執行它的默認值,這是將修改的字段打印出來,並由OFS分隔。所以:刪除每行的最後逗號分隔字段中的所有空格。 – 2013-05-10 17:26:10