我正在尝试使用以下行操作文件:
331436218071156,XXXXXXXXXXXXXXX6269,12/28/2018,0
使用这个 sed 命令:
sed -e '/XXXXXXXXX/ s/^\([0-9]*\),XX*[0-9]*,\([^,]*\),\(.*\)$/\2,\1,\3,/' myfile.csv
要产生这样的一行:
12/28/2018,331436218071156,0,
相反,我得到:
,2/28/2018,331436218071156,0
为什么输出模式中的第一个字符被,
替换字符串中的结尾替换?