如何删除文件最后一行的最后一个字符?

Joa*_*iay 9 linux bash file

我在文件中有这组行:

{info},
{info},
{info},
{info},
Run Code Online (Sandbox Code Playgroud)

我希望这样的文件没有最后一个",":

{info},
{info},
{info},
{info}
Run Code Online (Sandbox Code Playgroud)

我怎么能用bash做呢?任何的想法?

Mar*_*oun 19

你可以使用sed:

sed '$ s/.$//' your_file
Run Code Online (Sandbox Code Playgroud)
  • 首先$是告诉sed只匹配最后一行
  • s是"替代",注意最后两个/s 之间的空字符串
  • .$ 是一个匹配文件中最后一个字符的正则表达式

请注意,您可以使用您想要的任何分隔符/,例如,您可以重写表达式:

sed '$ s-.$--' your_file
Run Code Online (Sandbox Code Playgroud)