【发布时间】:2013-06-14 12:53:29
【问题描述】:
我正在尝试为程序自动生成的日志制作解析器,而生成 csv 的解析器部分开始出现奇怪的行为。 最疯狂的部分是这个:
echo "$COMMAND_3_NAME,,$TIME_1_START,$TIME_1_END,$DIFF_1,,$TIME_2_START,$TIME_2_END,$DIFF_2,,$TIME_3_START,$TIME_3_END,$DIFF_3,,$TIME_USR_START,$TIME_USR_END,$DIFF_USR" >> $OUT_NAME
这一行正在生成以下输出:
Command_3,,458.7
484.0,483.9
507.5,-458.7
967.9
507.5,,271.8
271.8,271.8
271.8,-271.8
543.6
271.8,,,,,,967.8
967.8,967.8
967.8,-967.8
1935.6
967.8
其中不应该有任何 \n,因为我在打印的每个变量中都执行了“sed”s/\n//g”。
【问题讨论】:
-
您的 sed 版本是否将 '\n' 转换为换行符,还是将其视为两个文字字符 '\' 和 'n'?
-
最好还是试试
tr -d '\n' -
我没有看到每行末尾的“,”。您在帖子中省略了它们,或者回声忽略了它们?
-
不应该有任何新行。我发布的是程序的确切输出。