Cool bash script truc avec les tableaux
Si vous faire beaucoup de script bash, alors vous savez il ya quelques trucs assez sympa, vous pouvez retirer avec elle. Bash est un outil très flexible. La plupart des utilisateurs de Linux ne se rendent pas compte combien elle est puissante et l'utilisent rarement. Mais quand vous en avez besoin, il est toujours là. Je joue avec bash beaucoup et l'employer pour un certain nombre de choses. La ligne de commande est certainement mon ami. De la commande que vous ne faire pratiquement n'importe quoi - mais parfois la chose la plus simple, par exemple les fichiers de comptage dans un répertoire, peut vous échapper. Pour ce faire, comme une commande vous taperez quelque chose comme ls -1 ~ / | wc-l. Pas toujours facile à retenir. Mais dire que vous pouvez créer un simple script bash qui compter le nombre de fichiers dans un répertoire ainsi que la liste de ces fichiers. Maintenant, ce serait cool ... et applicable.
Dans cet article je vais vous présenter un simple script bash qui va faire que cela: le comte et la liste du nombre de fichiers dans un répertoire. Le script bash est assez simple et prend avantage de tableaux.
Qu'est-ce qu'un tableau?
Si vous n'êtes pas sûr de ce tableau est, ne craignez pas. Un tableau est simplement un agencement systématique des objets. Cet arrangement est généralement en lignes et en colonnes. Bien sûr, il ya des définitions beaucoup plus compliqué de tableaux ... surtout quandappliquée à la programmation d'application. Mais pour des raisons de ce script bash, il est sûr de s'arrêter à cette définition.
Le script
[Figure 1
Le script pour le tableau est assez simple. La figure 1 montre comment le script sera comme vous le modifier dans votre éditeur favori. Et pour votre copier / coller le plaisir, je vous donne le code proprement dit:
= array ("ls»)
wd = `pwd` len = $ {# tableau [*]} notify-send "Vous avez des objets len $ en dollars de DEO." i = 0 while [$ i-lt $ len]; do echo "$ i: $ { array [$ i]} "laissez-i + + fait l'avis du script ci-dessus prend avantage de la chouette notify-envoyer la commande Je vous ai récemment présenté. Que fait ce script est d'utiliser un tableau de comptage, liste, et le nombre des fichiers dans un répertoire. Maintenant, si vous regardez le code, vous verrez qu'il énumère également les fichiers(Et les numéros de chacun d'entre eux). Ce n'est pas pratique avec le notify-envoyer la commande de sorte qu'au lieu nous n'utilisons que le système de notification pour informer l'utilisateur le nombre de fichiers dans un répertoire. C'est bien parce que la pleine puissance sera dans le line.What commande que vous devez faire est de copier ce code dans un fichier, enregistrez le fichier (appelons-le tableau), puis donner que les autorisations de fichiers exécutables avec la commande chmod ugo + x tableau. Je lui donne l'utilisateur / groupe / autres autorisations d'exécution au cas où vous copiez ce fichier dans / usr / bin. Naturellement, ce script est un peu viciée. Par exemple, si vous deviez copier le script dans le répertoire / usr / bin /, vous pouvez l'exécuter à partir de n'importe quel répertoire et il vous donnera toute la production dont vous avez besoin. Toutefois, si vous essayez d'exécuter cette commande de la boîte de dialogue Exécuter (hitFigure 2
Lorsque vous exécutez le script à partir d'une ligne de commande les résultats ressemblera à celui de la figure2. Ici vous pouvez voir les notify-envoyer les résultats ainsi que les résultats imprimés dans le terminal. Pretty chouette petit trick.Obviously ce script est un droit peu limité? Le vrai but de cet exercice était de vous montrer une avance de plus petit script shell ainsi que la manière dont un script peut interagir avec le notify-envoyer la commande. Final pensées Shell script est un outil souple et utile étonnamment. Tous les utilisateurs Linux qui évitent la ligne de commande n'ai aucune idée de la puissance qui leur manque. Avec ce script simple vous pouvez le modifier ou l'utiliser pour n'importe quel nombre de possibilités. Nous reviendrons à des tableaux dans des scripts shell et beaucoup, beaucoupplus.
Commentaires
Enregistrer un commentaire