Verwenden Sie den Linux-Befehl „seq“, um eine Zahlenfolge zu generieren (empfohlen)

Verwenden Sie den Linux-Befehl „seq“, um eine Zahlenfolge zu generieren (empfohlen)

Der Linux-Befehl „seq“ kann blitzschnell Zahlenlisten generieren und ist zudem einfach zu verwenden und flexibel.

Eine der einfachsten Möglichkeiten zum Generieren einer Zahlenliste in Linux ist die Verwendung des Befehls „seq“ (sequence). In seiner einfachsten Form verwendet seq eine Zahl als Argument und gibt eine Liste von 1 bis zu dieser Zahl aus. Zum Beispiel:

$ Folge 5
1
2
3
4
5

Sofern nicht anders angegeben, beginnt die Sequenz immer mit 1. Sie können eine Sequenz starten, indem Sie vor der letzten Zahl eine andere Zahl einfügen.

$ Folge 3 5
3
4
5

Inkrement angeben

Sie können auch den Inkrementschritt angeben. Angenommen, Sie möchten die Vielfachen von 3 auflisten. Geben Sie den Startpunkt (in diesem Beispiel die erste 3), das Inkrement (die zweite 3) und den Endpunkt (18) an.

$ Folge 3 3 18
3
6
9
12
15
18

Sie können negative Inkremente (d. h. Dekremente) verwenden, um von größeren zu kleineren Zahlen zu gelangen.

$ Folge 18 -3 3
18
15
12
9
6
3

Der seq-Befehl ist auch sehr schnell. Sie könnten wahrscheinlich in 10 Sekunden eine Liste mit einer Million Zahlen erstellen.

$ Zeitsequenz 1000000
1
2
3
…
…
999998
999999
1000000
real 0m9.290s <== 9+ Sekunden
Benutzer 0m0.020s
System 0 m 0,899 s

Verwenden von Trennzeichen

Eine weitere sehr nützliche Option ist die Verwendung eines Trennzeichens. Anstatt in jeder Zeile eine einzelne Zahl aufzulisten, können Sie ein Komma, einen Doppelpunkt oder ein anderes Zeichen einfügen. Auf die Option -s folgt das zu verwendende Zeichen.

$ seq -s: 3 3 18
3:6:9:12:15:18

Wenn Sie nur möchten, dass die Zahlen in eine Zeile passen, können Sie anstelle der standardmäßigen Zeilenumbrüche Leerzeichen verwenden.

$ seq -s' ' 3 3 18
3 6 9 12 15 18

Beginnen Sie mit der Mathematik

Der Übergang vom Generieren von Zahlenfolgen zum Berechnen derselben scheint ein großer Schritt zu sein, aber mit dem richtigen Trennzeichen kann „seq“ problemlos an bc zur Berechnung übergeben werden. Zum Beispiel:

$ seq -s* 5 | bc
120

Was ist bei diesem Befehl passiert? mal sehen. Zuerst generiert seq eine Liste von Zahlen mit * als Trennzeichen.

$ Folge -s* 5
1*2*3*4*5

Anschließend übergibt es die Zeichenfolge an einen Rechner (bc), der die Zahlen sofort multipliziert. Sie können ziemlich umfangreiche Berechnungen in weniger als einer Sekunde durchführen.

$ Zeitsequenz -s* 117 | bc
39699371608087208954019596294986306477904063601683223011297484643104\
22041758630649341780708631240196854767624444057168110272995649603642\
560353748940315749184568295424000000000000000000000000000
real 0m0.003s
Benutzer 0m0.004s
System 0m0.000s

Einschränkung

Sie können nur ein Trennzeichen auswählen, daher sind die Berechnungen sehr eingeschränkt. Durch die alleinige Verwendung von bc können komplexere mathematische Operationen durchgeführt werden. Außerdem funktioniert seq nur mit Zahlen. Um eine Folge einzelner Buchstaben zu erzeugen, verwenden Sie stattdessen den folgenden Befehl:

$ echo {a..g}
abcdefg

Zusammenfassen

Oben habe ich Ihnen die Verwendung des Linux-Befehls „seq“ zum Generieren digitaler Sequenzen vorgestellt. Ich hoffe, es wird Ihnen hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!
Wenn Sie diesen Artikel hilfreich finden, können Sie ihn gerne abdrucken und dabei bitte die Quelle angeben. Vielen Dank!

Das könnte Sie auch interessieren:
  • So verwenden Sie den Linux-Befehl seq
  • Detaillierte Erläuterung der Verwendung des Linux-Befehls seq

<<:  Miniprogramme nutzen die Miniprogramm-Cloud zur Implementierung von WeChat-Zahlungsfunktionen

>>:  Eine kurze Analyse der Unterschiede zwischen „:=“ und „=“ in MySQL

Artikel empfehlen

So erstellen Sie einen SVN-Server unter Linux

1: SVN installieren yum install -y Subversion 2. ...

Detaillierte Erklärung zur Anzeige der aktuellen Anzahl an MySQL-Verbindungen

1. Zeigen Sie die detaillierten Informationen all...

Das rel-Attribut des HTML-Link-Tags

Das <link>-Tag definiert die Beziehung zwis...

Dateiupload über HTML5 auf Mobilgeräten

Meistens werden Plug-Ins zum Hochladen von Dateie...

Warum sind die Bilder in mobilen Web-Apps nicht klar und sehr verschwommen?

Warum? Am einfachsten lässt es sich so ausdrücken:...

Schreiben Sie ein React-ähnliches Framework von Grund auf

Kürzlich habe ich im Internet den Artikel „Build ...

So verwenden Sie Vue zum Implementieren von CSS-Übergängen und Animationen

Inhaltsverzeichnis 1. Der Unterschied zwischen Üb...

So verhindern Sie, dass Flash HTML-Div-Elemente abdeckt

Als ich heute einen Flash-Werbecode schrieb, habe ...

Holen Sie sich die IP und den Hostnamen aller Hosts auf Zabbix

zabbix Zabbix ([`zæbiks]) ist eine Open-Source-Lö...