je tente de remplacer le charbon #
avec une nouvelle ligne \n
:unix commande sed pour les caractères échappées
sed -e "s/#/\n/g" > file.txt
cela fonctionne très bien.
Maintenant, il y a un problème avec l'omble chevalier #
, quand est échappé avec -
:
par exemple .: 123 # 456- # 789 # 777 devrait être:
456 # 789
CHAR échappé -
lui-même peut aussi être échappées: par exemple .: 123 # 456- # 777 # 789 à -012 devrait être:
456 # 789-012
Comment puis-je faire avec sed?
qu'en est-il de l'écho "# 123 # 456- # 789 # 777" | sed 's/\\ ([^ -] \\) #/\ 1 \ n/g; s/- \\ (. \\)/\ 1/g' – gert
@newGuest, attendez-vous une nouvelle ligne avant ' 123 '? Alors sed/s \\ (^ \ | [^ -] \\) #/\ 1 \ n/g; s/- \\ (. \\)/\ 1/g 'est ce que vous voulez. – livibetter
la nouvelle ligne peut être là - mais cela ne fonctionne pas: echo "1 ## 2 # 3" | sed "s/\\ (^ \ | [^ -] \\) #/\ 1 \ n/g; s/- \\ (. \\)/\ 1/g" – gert