如何获取特定列中单词的字符数?

如何获取特定列中单词的字符数?

我有一个这样的 CSV 文件:

abd,123,egypt,78
cde,456,england,45

如何获取仅第三列单词的字符数?

我不知道如何wc做到这一点。

答案1

cut -d, -f3 | tr -d '\n' | wc -m

(记住计算wc -c字节数,而不是字符数:

$ echo a,1,españa,2 | cut -d, -f3 | tr -d '\n' | wc -c
7
$ echo a,1,españa,2 | cut -d, -f3 | tr -d '\n' | wc -m
6

答案2

awk -F, '{sum+=length($3)}; END {print +sum}' file

答案3

一个perl办法:

perl -Mopen=:locale -F, -anle '$sum += length($F[2]); END{print $sum}' file

或更短的版本:

perl -Mopen=:locale -F, -anle '$sum += length($F[2])}{print $sum' file

答案4

你也可以使用

awk -F, '{printf "%s", $3}' file | wc -m

相关内容