Deze gids zal je tonen hoe je de opdracht seq gebruikt om lijsten met getallen binnen de Linux-terminal te genereren.
Basis syntaxis van het commando Seq
Stel je voor dat je de nummers 1 tot 20 op het scherm wilde weergeven.
De volgende opdracht seq laat u zien hoe u dit doet:
volg 1 20
Op zichzelf is dit commando tamelijk nutteloos. U wilt op zijn minst de getallen naar een bestand exporteren.
U kunt dit als volgt doen met het commando cat:
volg 1 20 | kat> genummerd bestand
Nu heb je een bestand met de naam numberfile met de nummers 1 tot 20 afgedrukt op elke regel.
De methode die we tot nu toe hebben getoond voor het weergeven van een opeenvolging van getallen, zou gecondenseerd kunnen zijn tot het volgende:
volg 20
Het standaard startnummer is 1, dus door alleen het nummer 20 in te voeren, telt de seq-opdracht automatisch van 1 tot 20.
U hoeft alleen het lange formaat te gebruiken als u als volgt tussen twee verschillende nummers wilt tellen:
volg 35 45
Hierdoor worden de nummers 35 tot 45 weergegeven op de standaarduitvoer.
Hoe een toename in te stellen met behulp van de opdracht Seq
Als u alle even nummers tussen 1 en 100 wilt weergeven, kunt u het incrementgedeelte van seq naar stap 2-nummers tegelijk gebruiken, zoals in het volgende voorbeeld wordt getoond:
volg 2 2 100
In de bovenstaande opdracht is het eerste nummer het startpunt.
Het tweede nummer is het nummer dat met elke stap wordt verhoogd, bijvoorbeeld 2 4 6 8 10.
Het derde nummer is het laatste nummer dat moet worden geteld.
Het Seq-commando formatteren
Gewoon nummers verzenden naar het scherm of naar een bestand is niet erg handig.
Misschien wilt u echter een bestand maken met elke datum in maart.
Om dit te doen, kunt u de volgende schakelaar gebruiken:
seq -f "% 02g / 03/2016" 31
Hierdoor wordt de uitvoer als volgt weergegeven:
- 01/03/2016
- 02/03/2016
- 03/03/2016
Je zult de% 02g opmerken. Er zijn drie verschillende indelingen: e, f en g.
Als een voorbeeld van wat er gebeurt wanneer u deze verschillende indelingen gebruikt, probeert u de volgende opdrachten:
De uitvoer van de% e is als volgt: De uitvoer van de% f is als volgt: Ten slotte is de uitvoer van% g als volgt: U kunt de opdracht seq gebruiken als onderdeel van een for-lus om een bepaald aantal keren door dezelfde code te lopen. Stel bijvoorbeeld dat u de term 'Hallo Wereld' tien keer wilt weergeven. Dit is hoe je het kunt doen: Standaard geeft de opdracht seq elk nummer op een nieuwe regel weer. Dit kan worden veranderd in een teken dat u wilt gebruiken. Als u bijvoorbeeld een komma wilt gebruiken om de getallen te scheiden, gebruikt u de volgende syntaxis: Als u liever een spatie gebruikt, moet u deze tussen aanhalingstekens plaatsen: Wanneer u de getallen naar een bestand uitvoert, is het u misschien geirriteerd dat u tijdens het lopen door de tientallen en de honderden dat de getallen van een verschillende lengte zijn. Bijvoorbeeld: U kunt alle getallen als volgt op dezelfde lengte maken: Wanneer u de bovenstaande opdracht uitvoert, zal de uitvoer nu als volgt zijn: U kunt de nummers in een reeks in omgekeerde volgorde weergeven. Als u bijvoorbeeld de nummers 10 tot 1 wilt weergeven, kunt u de volgende syntaxis gebruiken: U kunt de opdracht reeks ook gebruiken om met drijvende-kommagetallen te werken. Als u bijvoorbeeld elk nummer tussen 0 en 1 wilt weergeven met een 0,1 stap, kunt u dit als volgt doen: De opdracht seq is handiger als deze wordt gebruikt als onderdeel van een bash-script.seq -f "% e" 1 0,5 3
seq -f "% f" 1 0,5 3seq -f "% g" 1 0,5 3
Het Seq-commando gebruiken als onderdeel van A For Loop
voor i in $ (volg. 10)
doecho "hallo wereld"gedaan Verander de Sequence Separator
seq -s, 10
seq -s "" 10
Maak de sequentienummers dezelfde lengte
seq -w 10000
Nummers weergeven in omgekeerde volgorde
volg 10 -1 1
Drijvende-komma-nummers
volg 0 0,1 1
Samenvatting