Linuxist leiate mitu ebatavaliste funktsioonidega käsklust. Üks selline käsk on seq, mis väljastab arvude jada sõltuvalt määratud argumentidest.

Aga mida saaksite teha käsurea utiliidiga, mis viskab teile hulga numbreid? Selle saate teada sellest juhendist.

Mis on seq-käsk?

Nagu eespool mainitud, genereerib Linuxi seq-käsk kiiresti numbrimärkide jada. Kasutajad saavad erinevate numbrikombinatsioonide loomiseks anda käsule argumente. Näiteks saate kasvanud loendi, edastades seq-ile lihtsalt täiendava argumendi.

Mis on käsu praktiline kasutus? Kuigi seq ei tundu tervikuna võimas tööriist, saate käsust kasu saada, rakendades seda teiste Linuxi utiliitidega. Võite kasutada ka seq in bash-skriptid selle tõelise jõu avalikustamiseks.

Kuidas kasutada seq Linuxis

Seq võtab vaid mõned argumendid, mis muudab selle hõlpsasti õpitavaks tööriistaks kõigile.

Põhisüntaks

Käsu põhisüntaks on:

seq valikute numbrid

... kuhu valikud on lipud, mille saate määrata käsu erinevate meetodite ja numbrid on argumendid, mille edastate numbrilise järjestuse loomiseks.

instagram viewer

Looge numbrite loend

Seq-argumendid järgivad allpool toodud sisendvormingut:

seq viimane
seq esimene viimane
seq esimene juurdekasv viimane

Kui määrate ainult ühe numbri, tõlgendab seq seda loendi ülempiirina ja genereerib järjestuse alates ühest kuni määratud arvuni.

järjestus 5

Eespool nimetatud käsk väljastab järgmise:

1
2
3
4
5

Kui seq saab sisendina kaks numbrit, tõlgendab see neid järjestuse alumise ja ülemise piirina. Numbriloendi loomiseks neljast kuni kaheksani tehke järgmist.

järgnev 4 8

Väljund:

4
5
6
7
8

Kuid kui edastate käsule kolm numbrit, tõlgendab see teist argumenti kasvunumbrina. Näiteks:

järgnev 3 2 13

Eespool nimetatud käsk väljastab loendi numbritest, mis algavad kolmest kuni 13ni, suurendades kahte.

3
5
7
9
11
13

Lisage eraldaja numbrite vahele

Vaikimisi kasutab seq loendi eraldajana uue rea märki. See on põhjus, miks loendis on iga number eraldi real.

Saate seda vaikekäitumist muuta ja kasutada kohandatud eraldajat, kasutades -s lipp. Kasutamiseks Periood (.) eraldusmärk:

seq -s. 3 7

Väljund:

3.4.5.6.7

Pidage meeles, et mõnele tähemärgile meeldib Tilde (~) tuleb lisada jutumärkidesse. Seda seetõttu, et terminal kasutab Tilde märk tähistamaks /home kataloogi ja see kajastuks väljundis, kui te jutumärke ei lisa.

seq -s ~ 3 7

Väljund:

3 / kodu / 4 / kodu / 5 / kodu / 6 / kodu / 7

Teisalt, kui murrate eraldaja jutumärkidega:

seq -s '~' 3 7

Väljund:

3~4~5~6~7

Muutke väljundvormingut

Samuti saate väljundjärjestuse vormingut muuta nupu abil -f lipp. Vaikimisi eraldab seq kasutaja sisendist vormingu stiili. Näiteks kui määrate numbrid 0,1 ja 0,5, on vaikeväljundil ujukoma numbrivorming.

järjestus 0,1 0,5

Väljund:

0.1
0.2
0.3
0.4
0.5

Kohandatud väljundvormingu saate määrata erinevate teisendusspetsifikatsioonide abil, näiteks% a,% e,% f,% g,% A,% E,% F ja% G.

Võite kasutada % f täpsustaja, kui soovite, et väljund järgiks ujukoma numbri vormingut.

seq-f% f 4 7

Väljund:

4.000000
5.000000
6.000000
7.000000

Täpsuse muutmiseks kuni kahe kümnendkohani:

seq -f% 0,2f 4 7

Väljund:

4.00
5.00
6.00
7.00

Samuti saate väljundi täielikult teisendada, määrates väljundi malli. Näiteks loetelu saamiseks kõigist algavatest IP-aadressidest 192.168.5.x:

järjestus -f 192,168,5.% g 1 233

Väljund:

Väljundisse polstrite lisamiseks võite kasutada -w lipp. The -w lipp säilitab väljundi laiuse vastavalt suuremale määratud arvule.

Numbrijada genereerimiseks vahemikus üks kuni 1000, suurendades 100, säilitades püsiva laiuse:

seq -w 1 100 1000

Väljund:

0001
0101
0201
0301
0401
0501
0601
0701
0801
0901

Hankige seq käsurea abi

Kuigi seq on lihtne kasutada, võivad mõnikord kasutajad seda vajadust tunda kontrollige käsu käsiraamatut. The - aidata lipul kuvatakse seq man leht:

seq --abiline

Väljund:

Praktilised näited

Nagu juba mainitud, kasutatakse seq peamiselt teiste Linuxi käskudega, näiteks touch ja expr.

Tehke matemaatilisi toiminguid

Kui soovite konkreetse arvude vahemiku kiiresti lisada või lahutada, saate seda hõlpsalt kasutada seq-i sees väljend, mis on Linuxi käsk, mis käsitleb sisendit avaldisena ja kuvab vastava väljundi.

Kõigi arvude vahemikus üks kuni 100 tehke järgmist.

lauset "(seq -s" + "1 100)"

Seq-käsk genereerib väljundi järgmiselt:

1 + 2 + 3 + 4 + 5 + 6...

Expr käsitleb seda sisendväljendina ja väljastab lahenduse.

5050

Saate teha muid matemaatilisi toiminguid, asendades lihtsalt käsu seq eraldaja teiste operaatoritega.

Looge kiiresti mitu faili

Kui soovite Linuxis luua mitu faili, mille nimed järgivad sarnast mustrit, saate seda lihtsalt kasutades puutetundlik käsk ja järgnevad

Näiteks 10 faili loomiseks nimega fail-x.txt, kus x on number ühest kümneni:

puudutage käsku $ (seq -f "fail% g.txt" 1 10)

Puudutus loob failid teie jaoks välklambiga.

Seqi rakendamine skriptides

Mõelge, kas kirjutate a võrguskanneri tööriist nagu Nmap bashis võiksite saada nimekirja kõigist võrgu avatud portidest. Kuid selleks peate pingutama igas pordis (kokku 65535) ja analüüsima vastust.

Aja säästmiseks võite kasutada seq-i ja luua IP-aadresside ja pordikombinatsioonide loendi, mida saate oma skriptis kasutada.

Oletame, et soovite saada IP-aadressiga seadme kõigi portide loendi 1.2.3.4. Soovitud väljundi loomiseks on kiire käsk:

järgnev -f 1.2.3.4:%g 1 65535

Väljund:

Seejärel saate seda väljundit kasutada loendina ja sellest läbi liikuda, kontrollides oma skripti abil iga pordi ja analüüsides, kas see on avatud või mitte.

Kui kiiresti seq numbrid genereerib?

Võib-olla mõtlete, kui suudate sarnaseid tulemusi saavutada, kasutades for silmus bashis, miks valida selle ülesande jaoks seq? Seda seetõttu, et seqi tegelik jõud peitub selle kiiruses. Seq on kiirem kui mis tahes muu käsk, mis genereerib Linuxis arvude järjestuse.

Linuxi ajautiliidi abil saate selle kiirust isegi testida. Vaatame, kui palju aega kulub seq-le, et luua miljonist numbrist koosnev loetelu.

ajajärg 1000000

Allpool olevat väljundit vaadates näete, et miljonist numbrist koosneva loendi loomiseks kulus vaid neli sekundit.

Linuxi käsurea jõud

Seq pole ainus Linuxi tööriist, mis keskendub suuresti kiirete ja täpsete tulemuste pakkumisele. Kuigi saate luua numbrite loendi abil a silmus bashis, pole see soovitatav praktika, kui arvestada, kui kiire seq tegelikult on.

Linuxi käsurida annab teile suurema kontrolli operatsioonisüsteemi ja selle funktsioonide üle, mis on ka põhjus, miks peaksite juba täna terminali GUI kaudu kasutama hakkama.

E-post
5 põhjust Linuxi terminali valimiseks GUI asemel

Linuxi käsureal on jõudlus, juhtimine ja kasutamise lihtsus kõrgel kohal.

Loe edasi

Seotud teemad
  • Linux
Autori kohta
Sügav Sharma (65 artiklit on avaldatud)

Deepesh on MUO Linuxi nooremtoimetaja. Ta on kirjutanud Internetis infosisu üle 3 aasta. Vabal ajal meeldib talle kirjutada, muusikat kuulata ja kitarri mängida.

Veel Deepesh Sharmalt

Telli meie uudiskiri

Liituge meie uudiskirjaga, kus leiate tehnilisi näpunäiteid, ülevaateid, tasuta e-raamatuid ja eksklusiivseid pakkumisi!

Veel üks samm !!!

Palun kinnitage oma e-posti aadress meilis meile, mille me just saatsime.

.