Dans de nombreux langages de programmation, y compris les bash, les expressions régulières connues sous le nom de regex, sont un outil efficace pour la correspondance des modèles et le traitement du texte. L'instruction if est une structure de contrôle commune utilisée dans les scripts bash pour exécuter certaines commandes en fonction de certaines conditions. Dans Bash, vous pouvez utiliser Regex pour faire correspondre les modèles dans des instructions IF pour contrôler l'exécution du script et ce guide est entièrement question de correspondance regex dans une instruction BASH IF.
Regex correspondant dans une déclaration de bash si
La syntaxe pour utiliser Regex dans une instruction BASH IF est simple car vous pouvez utiliser l'opérateur = ~ pour faire correspondre une chaîne à un modèle d'expression régulière, voici un exemple:
#!/ bac / bash
Si [["Hello Linux" = ~ ^ Bonjour.*]]; alors
Echo "Match trouvé!"
autre
Echo "Aucun match trouvé."
Fi
L'instruction IF vérifie si la chaîne «Hello Linux» correspond au modèle d'expression régulière «^ Bonjour.* ". Le symbole caret (^) dans le motif indique le début de la chaîne et la star de point (. ) correspond à n'importe quel caractère zéro ou plus de fois.
Si le match est trouvé, le script exécutera les commandes dans le bloc alors. Dans ce cas, le script imprimera «Match trouvé!«À la console. S'il n'y a pas de correspondance, le script exécutera les commandes dans le bloc Else, qui imprimera «Aucune correspondance trouvée.«À la console:
Vous pouvez également utiliser Regex pour correspondre aux variables dans un script bash, voici un exemple:
#!/ bac / bash
str = "Hello Linux"
Si [[$ str = ~ ^ Bonjour.*]]; alors
Echo "Match trouvé!"
autre
Echo "Aucun match trouvé."
Fi
Ici, l'instruction IF vérifie si la variable «str» correspond au modèle d'expression régulière «^ Bonjour.* ". La variable est enfermée en doubles devis pour empêcher la division des mots et l'expansion du nom de fichier:
Conclusion
Une déclaration de bash si avec une correspondance regex est un outil efficace pour le traitement du texte et la correspondance des modèles dans les scripts bash. Il peut être utilisé pour limiter la façon dont vos scripts sont exécutés en fonction de critères particuliers. En maîtrisant la correspondance regex dans Bash, vous pouvez écrire des scripts plus efficaces et efficaces qui automatisent votre flux de travail et vous feront gagner du temps et des efforts.