xSonnyx a écrit
message='Bonjour tout le monde. C\'est moi!'
Il y a deux problèmes dans ta ligne :
- les chaines entre guillemets simples ne considèrent pas \ comme un caractère d'échappement, donc pour bash la chaine est « … monde. C\ » (à laquelle il concatène « est »)
→ Il faut donc utiliser des guillemets doubles si tu veux mettre des guillemets simples / apostrophes dans ta chaine
- « ! » doit être échappé dans les chaines de caractères
Tu a donc plusieurs solutions :
message="Bonjour tout le monde. C\'est moi \!"
message="Bonjour tout le monde. C\'est moi "!
message='Bonjour tout le monde. '"C\'est moi "!
(La concaténation en bash se fait par simple juxtaposition, donc tu peux découper ta chaine en plusieurs morceaux utilisants des guillemets différents.)
message=Bonjour\ tout\ le\ monde.\ C\'est\ moi\ !
…
PS : en français, on met un espace avant les ponctuations à deux nivaux (;:!?) contrairement à l'anglais