sed replace []角括弧
Sed Replace Square Brackets
sedを使用して一部の特殊文字を置き換える場合はエスケープする必要がありますが、角括弧[]を置き換える場合は、いくつかの特殊スキルが必要になる場合があります。
1.置換[または]
echo '[test' |sed 's/[//' echo 'test]' |sed 's/]//' echo 'test]' |sed 's/]//'
比較すると、[置き換えるときはエスケープする必要がありますが、置き換えるときは]エスケープする必要がないことがわかります。
2.同時に交換します[]
echo'[test]' |sed's/[[]]/' # Cannot replace echo'[test]' |sed's/[[]]/' # Cannot replace
上記の2つの方法を同時に置き換えることができないことを確認する必要がある場合
方法1:
sedを2回使用
echo '[test]' |sed 's/[//' |sed 's/]//'
方法2:
echo '[test]' |sed 's/[][]//'
時間があるときに特定の原則を追加します