我正在编写一个脚本,将一些 Magic 牌组列表从一种格式转换为另一种格式。我需要在每张牌所在行的末尾插入其设置代码。我的代码是:
sed -i "$line_number""s/$/""|""$set_code"/ "$deck_file"
$line_number
文件中哪一行、$set_code
哪里是需要添加的文本以及$deck_file
哪里是我正在编辑的文件,所有这些都已在代码中定义。
我希望这条线能起到以下作用:
1 Acidic Slime
并将其变成
1 Acidic Slime|M13
但相反,它添加了一个新行并输出
1 Acidic Slime
|M13
在文件中。任何帮助都值得感激,我确信我只是遗漏了一些东西sed
。我愿意使用 awk 或任何其他命令,不一定非要这样sed
。
答案1
问题是\r
每行末尾都有一个我不知道的字符。这会使光标返回到行首。我通过尝试回显"$cardname""|""$set_code"
哪个输出注意到了这一点
|M13idic Slime