我正在尝试使用此命令将aws用户的创建日期以一种更用户友好的格式放入CSV文件中。我尝试过:
aws_user_friendly_date=$(date --date "$aws_user_create_date" '+%B %d\\, %Y')
aws_user_friendly_date=$(date --date "$aws_user_create_date" '+%B %d\, %Y')
我想注释掉逗号,因此它在CSV文件中的格式正确。
但是它不起作用,我将其作为输出:
AWS Account Creation Date: June 15\\, 2017
AWS Account Creation Date: June 15\, 2017
如果我留下逗号以免转义,则CSV文件会将年份放入其自己的列中。如何正确显示转义逗号,以免混淆CSV文件?
答案 0 :(得分:2)
在许多CSV方言中,反斜杠只是常规字符,不会转义任何内容。在字段中放置文字逗号的方法是用双引号将字段值引起来。
aws_user_friendly_date=$(date --date "$aws_user_create_date" '+"%B %d, %Y"')
总体而言,更好的设计可能是以正确的机器可读格式存储日期,并仅在需要显示日期时才将其转换为易于阅读的格式。