Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Der Befehl seq
gibt Zahlen in einem definierten Bereich aus. Er eignet sich gut, um Testdaten für Shell-Kommandos oder Zahlenreihen für alle möglichen Anwendungsfälle zu erzeugen.
Oft kann man das gleiche Ziel in der Bash allerdings auch durch eine sequence expression erreichen.
Das Programm seq ist im essentiellen Paket
coreutils
von Ubuntu enthalten und ist deshalb auf jedem System installiert.
Der Befehl seq
kennt keine Eingaben, sondern nur Optionen [1] sowie Start- und Endwert sowie Schrittweite:
seq [OPTIONEN] ENDWERT seq [OPTIONEN] STARTWERT ENDWERT seq [OPTIONEN] STARTWERT SCHRITTWEITE ENDWERT
Optionen von seq | |
Verfügbare Optionen | Bedeutung |
-f FORMAT oder --format=FORMAT | Formatangabe für Fließkommazahlen wie bei printf |
-s STRING oder --separator=STRING | Angabe eines Zeichenkette, die als Trenner benutzt wird. Fehlt die Angabe wird ein Zeilenumbruch zwischen den Zahlen ausgegeben. |
-w oder --equal-width | Erzeugung gleichlanger Zahlen durch Ausgabe führender Nullen |
--help | Ausgabe der Kommandozeilenhilfe |
--version | Ausgabe der Programmversion |
Angabe des Endwerts:
seq 5
1 2 3 4 5
Angabe von Start- und Endwert:
seq 3 5
3 4 5
seq -f '%3.1f' 5
1,0 2,0 3,0 4,0 5,0
seq -f '%04.1f' 6 10
06,0 07,0 08,0 09,0 10,0
LANG=en seq -f '%3.1f' 5
1.0 2.0 3.0 4.0 5.0
for i in {1..5}; do echo $i; done
1 2 3 4 5
for i in {1..5..2}; do echo $i; done
1 3 5
for i in {1..5}; do printf '%3d\n' $i; done
1 2 3 4 5
for i in {1..5}; do printf '%03d\n' $i; done
001 002 003 004 005
for i in {1..5}; do printf '%03.1f\n' $i; done
1,0 2,0 3,0 4,0 5,0
for i in {1..5}; do LANG=en printf '%03.1f\n' $i; done
1,0 2,0 3,0 4,0 5,0
Diese Revision wurde am 3. Juni 2013 21:34 von noisefloor erstellt.