Vous pouvez utiliser la commande SEQ pour itérer une séquence de nombres sur la ligne de commande ou même en bash. Vous pouvez également tuer la sortie vers les autres fichiers ou programmes. Nous couvrirons tout cela dans cet article.
Travailler avec la commande SEQ
La commande SEQ est préinstallée sur Linux. Sa syntaxe de base est:
$ seq [option] Première augmentation du dernierLa commande SEQ génère une séquence de nombres. Vous pouvez définir comment générer les nombres.1
1. Travailler avec SEQ Last
Lorsqu'un seul argument est donné, SEQ le traite comme le DERNIER. Il imprime les nombres à partir de 1 et augmente jusqu'à ce nombre. L'incrément par défaut est de 1.
Par exemple, pour utiliser 14 comme argument, la sortie sera:
2. Travailler avec SEQ en premier et dernier
Vous pouvez spécifier où démarrer le numéro de séquence en ajoutant deux arguments. Le premier représente la valeur de départ, et l'autre est la dernière valeur à imprimer. Cependant, le premier argument ne peut pas être plus grand que le dernier argument.
Imprimons la séquence à partir de 3 à 14. La commande sera:
3. Travailler avec SEQ First Incrément dernier
Lorsque SEQ reçoit trois arguments, il traite le premier argument comme le point de départ lorsque le numéro de séquence démarre. Le deuxième argument est le nombre d'incrément, et le troisième argument est le dernier numéro.
Par exemple, pour imprimer 3 à 14, incrément la valeur de 2, la commande sera:
4. Travailler avec des chaînes formatées
SEQ permet les chaînes de concaténation avec les numéros de séquence en utilisant le" %g" option. Le format de chaîne est similaire à la programmation C, et vous pouvez spécifier le nombre de caractères. Voyons quelques-uns des rares exemples.
Pour ajouter les chaînes avant le numéro de séquence, appliquez la commande suivante:
$ seq -f "num% 02g" 5La commande précédente imprime les numéros de séquence de 1 à 5 et ajoute les mots et les zéros avant le numéro.
Vous pouvez également spécifier une augmentation et la valeur de départ.
Par exemple, pour imprimer les mêmes chaînes formatées à partir de 11 et incréments de 4 à 25, la commande sera:
$ seq -f "num% 02g" 11 4 25La sortie serait la suivante:
SEQ imprime la sortie chacune sur sa ligne. Si vous préférez afficher le résultat sur la même ligne, utilisez le -s drapeau.
5. Travailler avec SEQ -W
Par défaut, le rembourrage de largeur de la sortie n'est pas égal, surtout lorsque vous travaillez avec des nombres qui n'ont pas le même nombre de chiffres. Cependant, vous pouvez ajouter les zéros principaux pour égaliser la largeur en utilisant le -w.
6. Travailler avec des séparateurs
Un séparateur est nécessaire lors de la génération des numéros de séquence, en particulier sur la même ligne. Le SEQ offre le -s drapeau qui vous permet de définir le type de séparateur à utiliser. Nous avons ajouté différents séparateurs dans l'exemple suivant:
7. Travailler avec des nombres à virgule flottante
Lorsque vous devez générer une séquence contenant les valeurs flottantes, utilisez le «%F”Option et ajoutez une valeur d'incrément. Par exemple, pour ajouter un 0.5 Incrément, la commande sera:
8. Travailler avec des scripts bash à l'aide de SEQ
Vous pouvez utiliser le SEQ pour créer des scripts bash. Dans notre cas, nous créerons un script bash qui génère les numéros de séquence de 2 à 10 avec un 0.8 incrément.
Le code du script sera:
Faire le script exécutable et l'exécuter pour générer la sortie.
Vous pouvez également créer un script qui crée des fichiers à partir d'un mot-clé donné suivi des nombres générés. Dans notre cas, nous créons un script qui crée des fichiers nommés conférence et utilise le seq pour les nommer.
Exécutez le script. Notez la sortie et comment il crée les différents fichiers, comme indiqué dans les éléments suivants:
Vous pouvez également créer plusieurs fichiers sur le terminal sans utiliser de script. Pour faire les mêmes fichiers que nous, en utilisant le script bash, mais sur le terminal à la place, la commande sera:
$ touch $ (seq -f “newlecture-% g.txt ”10)9. Piping de la sortie SEQ vers un fichier
Vous pouvez enregistrer la sortie du numéro de séquence dans un nouveau fichier en utilisant les différentes options. Dans notre cas, nous allons tuer la sortie sur un nouveau fichier qui sera créé lorsque la commande s'exécute.
$ seq -f «num% 02g» 11 4 25 | chat> Pipefile.SMSConclusion
SEQ est une commande Linux invite qui génère instantanément les numéros de séquence nécessaire. Vous avez maintenant compris comment utiliser le SEQ pour créer les numéros de séquence de différentes manières, y compris l'utiliser avec des scripts bash. Vous apprécierez la rapidité avec laquelle il fait le travail.