【发布时间】:2015-09-30 22:14:52
【问题描述】:
关于这个话题主要有2个问题:
我正在寻找一些 CSV 文件的行数。在 Bash 中,我知道我可以做到
wc -l < filename.csv。我该怎么做并从中减去 1(因为标题)?对于任何熟悉 CSV 文件和抓取原始行数可能存在的问题的人来说,一条线被多行环绕的可能性有多大?我知道这是一个非常可能的情况,但我想说这永远不会发生。如果有这种可能,使用 Python 的
csv包会更好吗?它是否基于分隔符和其他列包装器读取行?
【问题讨论】:
-
将行数放入一个变量中,并使用
$((var - 1))将其减1。 -
CSV 允许字段中包含换行符,当发生这种情况时,它们将被包裹在引号中。对于特定的 CSV 是否合理取决于它所拥有的数据类型。编程语言中的 CSV 库通常会处理这个问题,在普通的
bash中很难。