我想用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。)
请建议我......
答案 0 :(得分: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.)
(这假设您的输入只有一组括号。)