J'exécute cette commande dans un shell bash sur Ubuntu 12.04.1 LTS. J'essaie de supprimer à la fois les caractères [
et les ]
caractères d'un seul coup, c'est-à-dire sans avoir à piper pour séduire une deuxième fois.
Je sais que les crochets ont une signification particulière dans une expression régulière, je les échappe donc en ajoutant une barre oblique inverse. Le résultat que j'attendais est juste la chaîne 123
mais les crochets restent et j'aimerais savoir pourquoi!
~$ echo '[123]' | sed 's/[\[\]]//'
[123]
str='[123]'; str1=${str/\[/}; str2=${str1/\]}; echo $str2