Bash: 将包含逗号的数字打印到 csv 文件

Bash: printing out numbers containing commas to csv file

我正在尝试使用 bash.

将带逗号的数字打印到 csv 文件中

命令:

printf "1,000" > the.csv

打印出两个单元格,一个单元格为 1,一个单元格为 000。我想知道我如何告诉 csv 文件忽略逗号,以便我只能有一个包含 1,000 的单元格。

附带问题:我可以在打印时调整列的大小吗?即,我打印的单词太长,单元格无法完全容纳,我能否在打印单词时将其设置得足够大?

CSV 要求在带引号的字符串中使用逗号。因为引号是由 shell 解析的,所以您没有在命令中编写文字引号。如果你想写文字双引号,语法是

printf \"1,000\" > the.csv

printf '"1,000"' > the.csv

(由于其他原因,缺少最后的换行符和使用文字字符串作为 printf 的第一个参数是有问题的。你真的想要

printf '"%s"\n' "1,000" > the.csv

这也让您可以轻松编写多行代码。)