web-dev-qa-db-fra.com

comment analyser cette URL dans Ubuntu

J'ai une URL comme celle-ci

https://vimeo.com/library/videos/angular-fire-theme/table-of-contents

Dans un script bash, je veux analyser cette URL afin d'obtenir le texte "angular-fire-theme"

Les URL sont de format cohérent, c'est-à-dire qu'elles ont une table des matières à la fin et le format à l'avant.

Merci d'avance pour votre temps.

2
Hamza Ahmed Zia

Utilisez cette commande:

echo 'https://vimeo.com/library/videos/angular-fire-theme/table-of-contents' | cut -d / -f6

Cela sépare l'URL (prise de l'entrée standard, d'où le echo) par / et affiche le sixième champ. (le premier champ est "https:", le second est "", le troisième est "vimeo.com", etc.). Notez que cela dépend du nombre de barres obliques avant que le format ("angular-fire-theme" dans votre exemple) ne change.

Plus de façons de le faire:

echo 'https://vimeo.com/library/videos/angular-fire-theme/table-of-contents' | sed 's_.*/\(.*\)/table-of-contents_\1_'

Cela trouve la partie de l'URL juste avant la "table des matières" et la renvoie.

echo 'https://vimeo.com/library/videos/angular-fire-theme/table-of-contents' | sed 's_.*/videos/\(.*\)/.*_\1_'

Cela trouve la partie de l'URL immédiatement après les "vidéos" et la renvoie.

3
insert_name_here