Exemple de script shell pdf

Le premier exemple compte simplement le nombre de lignes dans un fichier d`entrée. Cette section présente plusieurs exemples de script shell. Étendez la version 7 de l`exemple de nombre de lignes ci-dessus, pour calculer également le nombre total d`octets et le nombre total de mots dans le fichier d`entrée. Dans le for-Loop, la variable de Shell n est un compteur pour le nombre de fichiers, et s est le nombre total de lignes jusqu`à présent. Une autre question importante à considérer est que la variable d`entier, sur laquelle l`itération est exécutée doit toujours compter vers le bas afin que l`analyse peut trouver une liaison. Il le fait en itérant sur toutes les lignes d`un fichier à l`aide d`une boucle while, effectuant une opération de lecture dans l`en-tête de boucle. En général, il est utilisé dans une boucle while, pour définir des variables shell qui seront utilisées ultérieurement. Toutefois, cela échoue sur les fichiers avec plus de 255 lignes. Cette version essaie d`utiliser la valeur de retour de la fonction pour retourner le nombre de lignes. Si les options de date sont utilisées pour restreindre l`étendue des fichiers à traiter, nous utilisons la date et une instruction if, pour comparer si l`heure de modification du fichier est dans l`intervalle spécifié. Bien qu`il y ait une ligne à traiter, le corps de la boucle sera exécuté dans ce cas simplement en augmentant un compteur par ((Counter + +)). Par convention UNIX, le succès est indiqué par un code de retour de 0, toutes les autres valeurs sont code d`erreur avec une signification spécifique à l`application. Comme un simple exercice, vous pouvez remplacer cette commande par un appel au script de comptage de ligne ci-dessus.

Nous utilisons un for-Loop pour itérer sur tous les fichiers fournis en tant qu`arguments pour le script. La partie principale du script est une boucle for sur tous les arguments de ligne de commande non-option. La valeur de retour est destinée à fournir simplement un code de retour, e. Bien sûr, il ya une commande Linux qui implémente déjà la fonctionnalité de comptage de ligne: WC (pour mot-Count) imprime, lorsqu`il est appelé avec l`option-l, le nombre de lignes dans le fichier. Pour compter le nombre de lignes dans un fichier, nous utilisons wc-l. L`exemple final prend en charge les options qui peuvent être transmises à partir de la ligne de commande, e. Nous utilisons un tuyau de chat et awk pour imprimer l`en-tête de ce fichier, jusqu`à la première ligne vide, si l`option d`aide est choisie. Cela peut nécessiter une certaine restructuration du code, comme dans l`exemple suivant, où un compteur explicite z est introduit à cet effet.

La commande sed correspond au nombre de lignes et remplace la ligne entière par le nombre de lignes uniquement, en utilisant la référence arrière à la première sous-chaîne ( 1). Comme documenté au début du script, il est appelé comme ceci (vous devez avoir un fichier text_file. En outre, la ligne actuelle est écrite dans un fichier, dont le nom est spécifié par le fichier de variable, en faisant écho à la valeur de la ligne de variable et en redirigeant la sortie standard de la variable à $file. Dans cette version, nous définissons une fonction count_lines qui compte le nombre de lignes dans le fichier fourni en tant qu`argument. L`exemple ci-dessous utilise des tableaux de Shell pour stocker tous les noms de fichiers (fichier) et son nombre de lignes (ligne). Ces exemples élaborent des fonctionnalités de Shell spécifiques.

カテゴリー: 未分類 パーマリンク