Joker chaine de caractères BASH

Résolu
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! :)

2 réponses

  1. 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
    1. 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