GNU/Linux >> Tutoriels Linux >  >> Linux

Symbole Backtick (`) dans Linux Shell Scripting

L'une des fonctionnalités les plus utiles des scripts shell est le caractère d'apostrophe, généralement appelé backtick (`) dans le monde Linux. Attention, il ne s'agit pas du caractère normal de guillemet simple que vous avez l'habitude d'utiliser pour les chaînes. Parce qu'il n'est pas utilisé très souvent en dehors des scripts shell, vous ne savez peut-être même pas où le trouver sur votre clavier. Vous devriez vous familiariser avec lui car c'est un composant crucial de nombreux scripts shell.

Astuce :Sur un clavier américain, il se trouve généralement sur la même touche que le symbole tilde ( ∼ ).

Le backtick vous permet d'affecter la sortie d'une commande shell à une variable. Bien que cela ne semble pas beaucoup, c'est un élément majeur de la programmation de scripts. Vous devez entourer toute la commande de ligne de commande avec des caractères de backtick :

# testing=`date`

Le shell exécute la commande dans les backticks et affecte la sortie à la variable testing. Voici un exemple de création d'une variable à l'aide de la sortie d'une commande shell normale :

$ cat myscript.sh
#!/bin/bash
# using the backtick character
testing=`date`
echo "The date and time are: $testing"
$

La variable testing reçoit la sortie de la commande date et est utilisée dans l'instruction echo pour l'afficher. L'exécution du script shell produit la sortie suivante :

$ chmod u+x myscript.sh
$ ./myscript.sh
The date and time are: Mon Jul 21 09:13:42 IST 2014
$

Ce n'est pas si excitant dans cet exemple (vous pouvez tout aussi bien mettre la commande dans l'instruction echo), mais une fois que vous avez capturé la sortie de la commande dans une variable, vous pouvez faire n'importe quoi avec.

Voici un exemple populaire de la façon dont le backtick est utilisé pour capturer la date actuelle et l'utiliser pour créer un nom de fichier unique dans un script :

#!/bin/bash
# copy the /usr/bin directory listing to a log file
today=`date +%y%m%d`
ls /usr/bin -al > /tmp/log.$today

La variable d'aujourd'hui est affectée à la sortie de la commande de date formatée. Il s'agit d'une technique courante utilisée pour extraire les informations de date pour les noms de fichiers journaux. Le format +%y%m%d indique à la commande date d'afficher la date sous la forme d'une année, d'un mois et d'un jour à deux chiffres :

$ date +%y%m%d
140721
$

Le script attribue la valeur à une variable, qui est ensuite utilisée dans le cadre d'un nom de fichier. Le fichier lui-même contient la sortie redirigée d'une liste de répertoires. Après avoir exécuté le script, vous devriez voir un nouveau fichier dans le répertoire /tmp :

$ ls -l /tmp/log.140721 
-rw-rw-r-- 1 geek geek 116755 Jul 21 09:21 /tmp/log.140721

Le fichier journal apparaît dans le répertoire en utilisant la valeur de la variable $today dans le cadre du nom de fichier. Le contenu du fichier journal est la liste des répertoires du répertoire /usr/bin. Si le script est exécuté le lendemain, le nom du fichier journal sera belog.140722, créant ainsi un nouveau fichier pour le nouveau jour.


Linux
  1. 8 exemples de commandes Quick Date sous Linux

  2. 10 exemples pratiques de commandes Linux nm

  3. date Exemples de commandes sous Linux

  4. Changer le shell par défaut sous Linux

  5. Linux :définir la date via la ligne de commande

Commande source sur Linux expliquée

7 exemples de commande de date sous Linux

Explication de la commande d'exportation sous Linux

Qu'est-ce que Shebang dans Linux Shell Scripting ?

Linux date Exemples de commandes

12 exemples de commandes de date Linux utiles