Joker chaine de caractères BASH

Résolu
gardiendelanuit Messages postés 1770 Date d'inscription   Statut Membre Dernière intervention   -  
gardiendelanuit Messages postés 1770 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

Voilà malgré une longue recherche sur google, je n'est toujours pas trouvé comment comparer une chaine de caractère avec une partie...
Je m'explique:

Je voudrais comparer un lien entré par l'utilisateur de façon à savoir si la syntaxe du lien est correct (avec www.*.* ou [[[http://]]]*.* ...)

Seulement avec l'étoile (qui d'après ce que j'ai vu ne sert que pour les recherches de fichiers) ça ne marche pas.
Voilà ce que j'ai fais :

 while [ $link != "www.*.*" ] && [ $link != "[[[http://]]]*.*" ] && [ $link != "[[[https://]]]*.*" ]   
 do   
  echo "Votre lien n'est pas valide!"    
  read link   
 done


Merci d'avance pour vos réponses! :)

A voir également:

2 réponses

Utilisateur anonyme
 
salut,

regarde bien le man bash, le paragraphe sur les Correspondances de Motifs (Pattern Matching), et celui sur les [[
while [[ $link == +(http?(s)://*|www.*) ]]
do   
  echo "Votre lien n'est pas valide!"    
  read link
done
ici les guillemets sont facultatifs, mais entre [ ils sont indispensables.
1
gardiendelanuit Messages postés 1770 Date d'inscription   Statut Membre Dernière intervention   264
 
Merci beaucoup de ta réponse j'ai regardé pas mal de man mais je ne cherchais sûrement pas au bon endroit.
Merci!
0