Bonjour
Dans le cadre des scripts Hook de SVN (c'est fameux :-) je dois récupérer des sous chaines de mes chemins dans le but de réaliser des opérations de vérification.
La question ici porte sur l'utilisation de regex
Comment faire pour extraire les sous chemins jusqu'a trunk ou branches/branch_+
servicePartners/agaps/Project/branches/branch_Erer1_0/toto/titi
=> servicePartners/agaps/Project/branches/branch_Erer1_0/
servicePartners/agaps/Project/branches/trunk/toto
=> servicePartners/agaps/Project/branches/trunk/
J'ai essayé avec sed mais je n'arrive pas à le faire en une seule commande :
echo "servicePartners/agaps/Project/branches/branch_Erer1_0/toto/titi" | sed 's!\(.*/branches/branch_.[^/]*\)/.*!\1!g'
=> servicePartners/agaps/Project/branches/branch_Erer1_0
echo "servicePartners/agaps/Project/trunk/toto/titi" | sed 's!\(.*/trunk\)/.*!\1!g'
=> servicePartners/agaps/Project/trunk
mais impossible de mixer les deux en une seule !
echo "servicePartners/agaps/Project/branches/branch_Erer1_0/toto/titi" | sed 's!\(\(.*/branches/branch_.[^/]*\)|\(.*/trunk\)\)/.*!\1!g'
=> Marche pas et je pense que c'est une limitation de SED.
Avez vous une solution simple ?
Fabrice
Partager