Bu komutu Ubuntu 12.04.1 LTS'de bir bash kabuğunda çalıştırıyorum. Her iki kaldırmak çalışılıyor [
ve ]
sed ikinci zamana boruya gerek kalmadan tek bir hamlede, yani karakterleri.
Köşeli parantezlerin normal ifadede özel bir anlamı olduğunu biliyorum, bu yüzden ters eğik çizgi ile başlayarak onlardan kaçıyorum. Beklediğim sonuç sadece dize 123
ama köşeli parantezler kaldı ve nedenini bilmek isterim!
~$ echo '[123]' | sed 's/[\[\]]//'
[123]
str='[123]'; str1=${str/\[/}; str2=${str1/\]}; echo $str2