这就是我的代码的工作原理,我已经给出了计算字符而不是行,因为换行符不见了。wc -c计算错误的字符数unix
原始文件有
A,0,0,0,21,36,12,0,0,0,17.2,34,18,17.2,30.5,96,126,517,2399,2,111.83,38.583,111,1,0,0,0,0,0,0
csv文件有一组数据,我只是计算列数。它的逗号数只有相同的列数。我删除了换行符,所以我不能使用wc -l,所以我尝试使用wc -c或-m,它们返回相同的值。但是,它计算了N + 1的值。
!head -1 ~/where/my/data/is/at.csv | sed 's/[^,]//g' | cat -E
returns [',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,$']
如果只是算逗号在这里,它是30,但是当我做wc -c
,它将返回31
应该给我30的实例,但它给了我31.因此,n值+1。我想要如何解决这些问题,当时wc并没有把事情计算正确。
能否请您发布样本INPUT_FILE和样品预计输出码的标签,因为它是不明确的。 – RavinderSingh13
在你的示例中,我只看到29个逗号,而不是30或31 ...如果你发布样本行(或创建示例行)并告诉你需要什么作为输出,它会更有帮助...我们可以调试什么只显示输出?例如:'printf',,,,,,,,,,,,,,,,,,,,,,,,,,,,,'| wc -c'给出29 ...还有什么可以对此做的事情? – Sundeep
我认为awk工作得很好,但我只是想知道wc如何在与awk在计算逗号相同的过程中工作。 – Mayjunejuly