1

我想替换使用 shell 脚本写在括号中的数据中的空格。我的输入线是

2012-05-21 06:37:16 M NumberOfHwEntitiesMismatch Cabinet=1(检测到未配置的 SAU。)

我希望我的输出是:

2012-05-21 06:37:16 M NumberOfHwEntitiesMismatch Cabinet=1(SAU_that_is_not_configured_detected。)

请给我一些建议......

4

1 回答 1

1

使用awk, 在 "(" 上拆分,然后gsub在第二个字段中使用下划线替换空格。

例子:

$ awk -F\( '{gsub(" ","_", $2);print $1"("$2}' <<< "2012-05-21 06:37:16 M NumberOfHwEntitiesMismatch Cabinet=1 (SAU that is not configured detected.)"
2012-05-21 06:37:16 M NumberOfHwEntitiesMismatch Cabinet=1 (SAU_that_is_not_configured_detected.)

(这假设您的输入只有一组括号。)

于 2012-06-01T07:38:28.490 回答