我试图在文件中找到这个字符串:
"cPHulk":{"BruteForce":3,"Login":3,"*":3}
并将其替换为此字符串:
"cPHulk":{"*":"1","Login":"1","BruteForce":"1"}
我使用sed来做这件事,但我很挣扎。我的sed命令如下:
sed -i -e 's/"cPHulk":{"BruteForce":3,"Login":3,"*":3}/"cPHulk":{"*":"1","Login":"1","BruteForce":"1"}/g' /var/cpanel/icontact_event_importance.json
编辑: 正确的sed公式:
sed -i -e 's/"cPHulk":{"BruteForce":3,"Login":3,"\*":3}/"cPHulk":{"\*":"1","Login":"1","BruteForce":"1"}/g' /var/cpanel/icontact_event_importance.json
答案 0 :(得分:0)
我发现在某些* nix上你必须提供一个空白作为后缀才能让它进行就地替换:
sed -i '' -e 's/"cPHulk":{"BruteForce":3,"Login":3,"*":3}/"cPHulk":{"*":"1","Login":"1","BruteForce":"1"}/g' /var/cpanel/icontact_event_importance.json
请注意''
-i