J’ai des repo_URLs dans Jenkins pour divers travaux qui ressemblent à:
ssh://[email protected]:7999/sad/agreement-edge.git ssh://[email protected]:7999/che/agreement-middle.git ssh://[email protected]:7999/char/login-edge.git
Je dois en extraire le côté accord-accord, accord-milieu, connexion .
Disons que repo url est défini comme une variable
RepoEndpoint = ssh: //[email protected]: 7999 / sad / agreement-edge.git
Comment puis-je en extraire l’accord?
Avec l’ extension de paramètre de bash:
RepoEndpoint="ssh://[email protected]:7999/sad/agreement-edge.git" RepoEndpoint="${RepoEndpoint%.*}" RepoEndpoint="${RepoEndpoint##*/}" echo "$RepoEndpoint"
Sortie:
accord-bord
version sed
, que vous pouvez exécuter sur un fichier (si vous avez plusieurs lignes à traiter):
sed 's=.*/\(.*\).git$=\1=' file_name
ou directement sur la chaîne:
sed 's=.*/\(.*\).git$=\1=' <<< 'ssh://[email protected]:7999/sad/agreement-edge.git'
... ou avec une variable:
sed 's=.*/\(.*\).git$=\1=' <<< "$RepoEndPoint"