Que signifie = ~ dans Bash?

Que signifie = ~ dans Bash?
Un programme bash est un simple document texte avec une série d'instructions. Ces déclarations combinent des instructions que nous mettons sur l'invite de commande manuellement (y compris ces LS ou CP). De même, tout ce que vous pouvez accomplir avec un script pourrait également être fait avec une invite de commande. Un signe de correspondance d'expression régulière, l'opérateur = ~, est utilisé pour identifier les expressions régulières. Perl a un opérateur similaire pour l'expression régulière correspondante, ce qui a stimulé cet opérateur. Ayons quelques exemples pour voir le fonctionnement de = ~ opérateur dans Ubuntu 20.04.

Exemple 01:

Premièrement, nous devons être connectés à notre système. Après cela, sur le bureau, appuyez sur «Ctrl + Alt + T» pour ouvrir le terminal de la console dans Ubuntu 20.04. À titre alternatif, nous pouvons également utiliser le menu «Activité» dans le coin supérieur gauche du bureau. Appuyez sur «l'activité» et la barre de recherche sera apparue. Cliquez dessus et écrivez «Terminal». La demande de terminal sera apparue. Frappez-le pour l'ouvrir. Maintenant, le terminal a été ouvert en utilisant l'une des deux méthodes mentionnées comme indiqué. Voyons comment l'opérateur = ~ fonctionne dedans. Tout d'abord, pour écrire un script bash, nous avons besoin de quelques fichiers bash pour être créés. Par conséquent, nous avons créé un fichier «Nouveau.sh ”avec la requête« Touch »typique de la console en dessous.

$ touchez nouveau.shot

Vous pouvez trouver le fichier de bash créé dans le dossier d'accueil d'Ubuntu 20.04. Au fur et à mesure que le fichier est créé, nous y ajouterons un script bash. Pour cela, nous devons ouvrir ce fichier dans le terminal en utilisant un éditeur. Donc, nous avons utilisé l'éditeur GNU Nano pour le faire, comme indiqué ci-dessous.

$ nano nouveau.shot

Maintenant, le fichier est ouvert dans l'éditeur GNU; Nous devons y mettre le code bash ci-dessous. Vous pouvez voir que nous avons ajouté l'extension bash à l'intérieur. Après cela, nous avons initialisé une variable «var» avec une certaine valeur de type de chaîne contenant des nombres et des alphabets. Nous avons mis la déclaration «IF» pour vérifier la condition si elle se réunit ou non. Cette condition vérifiera si la variable «var» contient les caractères, symboles et alphabets mentionnés sur le côté droit dans la clause de condition. Si le motif contient certains alphabets et symboles, il affichera «correspondant» dans le terminal par instruction ECHO; Sinon, imprimez «non correspondant».

Enregistrez le script bash par Ctrl + S et sortez via «ctrl + x @. Exécutons le fichier bash «Nouveau.sh ”via la requête bash comme ci-dessous. La sortie montre la sortie comme «correspondante», car le modèle variable correspond à l'ensemble défini de caractères et d'alphabets.

$ bash nouveau.shot

Exemple 02:

Ayons un exemple plus simple cette fois. Ouvrez le même «Nouveau.fichier sh ”pour mettre à jour son contenu. Alors, utilisez à nouveau l'instruction ci-dessous dans le shell.

$ nano nouveau.shot

Après l'avoir ouvert dans l'éditeur GNU, mettons-le avec le script ci-dessous de Bash. Bash a eu un opérateur de comparaison de correspondance de motif construit, symbolisé par = ~ de la version 3 (environ 2004). De nombreuses techniques de script qui nécessitaient autrefois toute utilisation de Grep ou de SED peuvent bien être gérées à l'aide de déclarations de bash, et des phrases bash peuvent même simplifier vos scripts pour comprendre et gérer. Bash renvoie un 0 lorsqu'un argument tel que $ var = «[[0-9]]» démontre que le champ de gauche satisfait la phrase à droite, ou une autre ailleurs, autant que d'autres opérateurs de contraste (e.g., -lt ou ==). Comme nous avons donné la valeur «6» à la variable «var», elle satisfait la condition, renvoie donc 0. Ensuite, il imprimera le message que «6 est un nombre». Si la condition va mal, elle imprimera «non le numéro». Nous avons enregistré le fichier par «Ctrl + S» et l'avons renvoyé au terminal via la clé de raccourci «Ctrl + X».

Une fois que nous avons à nouveau exécuté le fichier sur le terminal, il affiche que «6 est un nombre» via la requête suivante.

$ bash nouveau.shot

Il affiche le message «6 est un nombre» car la variable «var» satisfait la condition dans l'instruction «IF». Mettons à jour notre variable pour revoir la sortie. Ouvrez à nouveau le fichier bash via:

$ nano nouveau.shot

Après avoir ouvert le fichier dans un éditeur, nous avons mis à jour la variable et lui avons attribué une valeur de type de chaîne «G». Cette fois, la condition ne doit pas être satisfaite et doit sortir la deuxième déclaration d'écho «pas un nombre» dans le terminal. Enregistrer et fermer le fichier de script bash.

Lors de l'exécution du fichier bash, nous avons trouvé les résultats attendus. Vous pouvez jeter un coup d'œil qui affiche le message «pas un nombre» en retour de la condition de déclaration «IF». Nous avons utilisé la requête indiquée dans la console pour voir la sortie.

$ bash nouveau.shot

Exemple 03:

Prenons un exemple très simple mais un peu différent. Ouvrez le fichier bash «Nouveau.sh ”encore une fois.

$ nano nouveau.shot

Lorsque vous ne savez pas exactement ce que signifie «l'expression régulière», voici une description rapide. Une séquence est représentée par une expression régulière, qui est une série de lettres. Tout d'abord, nous avons affiché un message «Entrez n'importe quoi» à un utilisateur, puis lions l'entrée qu'un utilisateur entre dans le terminal. Ensuite, nous avons mis l'instruction IF pour vérifier si la valeur d'entrée saisie par un utilisateur correspondant au modèle mentionné. Dans l'illustration ci-dessous, [0-9] s'adapte au numéro unique, mais [A-Z] s'adapte à une certaine majuscule. [A-Z] + s'adaptera à n'importe quelle combinaison supérieure. La phrase [A-Z] + $, mais de l'autre côté, pourrait satisfaire une chaîne composée entièrement de majuscules.

Lors de l'exécution, l'utilisateur est entré, 9. Il imprime que «9 est un nombre».

Lors de l'exécution à nouveau, l'utilisateur est entré #. Il a affiché que "# n'est pas un numéro".

Lorsqu'un utilisateur est entré «K», il affiche que «k n'est pas un numéro».

Exemple 04:

Prenons un exemple complexe pour développer l'opérateur = ~. Ouvrez à nouveau le fichier.

$ nano nouveau.shot

Regex en bash peut être un peu délicat. Nous vérifions si le contenu du champ de messagerie $ semble être celui d'une adresse e-mail tout au long de l'échantillon en dessous. Il convient en effet de noter que la toute première phrase (le nom du compte) peut inclure des lettres, des chiffres et des symboles spéciaux. Le symbole @ apparaît entre le nom et le site de messagerie, ainsi qu'un point littéral (.) vu entre le domaine Web principal ainsi que le «com», le «net», le «gouvernement», etc. Des supports doubles sont utilisés pour entourer le contraste.

Après la première exécution, l'utilisateur a entré le modèle correct de l'e-mail. La sortie affiche l'e-mail avec un message de réussite que «l'e-mail est correct».

Lors d'une autre exécution, l'utilisateur est entré dans le mauvais modèle d'e-mail. Par conséquent, la sortie de l'e-mail affiche le message de défaillance que «l'e-mail ne semble pas correct».

Conclusion:

Dans ce guide, nous avons vu le travail et les fonctionnalités de l'opérateur = ~ dans le script bash et ce que cela signifie dans le bash. Nous espérons que ce guide vous a aidé à son meilleur et que vous n'avez trouvé aucun problème tout en prenant de l'aide.