Linux删除行中字符后的空格

use*_*435 6 linux replace sed

在Linux中,如果我有一个包含以下条目的文件:

我的号码是= 1234; #这是一个随机数

我可以使用sed或其他任何东西将'#'替换为'+'之后的所有空格,以便输出如下所示:

我的号码是= 1234; #这+是+ A +随机数+

Ste*_*eve 3

一种使用方法awk

awk -F# 'OFS=FS { gsub(" ", "+", $2) }1' file.txt
Run Code Online (Sandbox Code Playgroud)

结果:

My Number is = 1234; #This+is+a+random+number
Run Code Online (Sandbox Code Playgroud)

编辑:

阅读下面的评论后,如果您的文件包含多个#,您可以尝试以下操作:

awk -F# 'OFS=FS { for (i=2; i <= NF; i++) gsub(" ", "+", $i); print }' file.txt
Run Code Online (Sandbox Code Playgroud)