这个 sed 命令在此脚本中起什么作用?

这个 sed 命令在此脚本中起什么作用?

我是 shell 脚本新手,不明白这个sed命令的作用。你能帮忙解释一下吗?

cat $fRostroTmp | sed "s/ *|/;/g" >> $fRostroCsv
rm -f $fRostroTmp

答案1

在评论中,您具体询问了sed表达式s/ *|/;/g

这是一个替换命令 ( s),它将正则表达式*|匹配的任何内容替换为单个字符;

该表达式*|匹配零个或多个空格,后跟一个|字符。因此,无论输入中出现这种情况,它都会被替换为;.

g表达式末尾的 会导致将sed替换应用于每行上的所有非重叠匹配项,而不仅仅是第一个匹配项。这意味着一行说

1 2 3 | 3 4 5 | 5 6 6

或者

1 2 3| 3 4 5     | 5 6 6

将转化为

1 2 3; 3 4 5; 5 6 6

相关内容