„printf"Ukaz v bash skripti deluje enako"printf ()”Deluje v jeziku C. Ta objava se bo osredotočila na „printfUkaz, njegova sintaksa in primeri, ki podrobneje opisujejo uporabo tega ukaza. Preverimo sintakso »printf”Ukaz:
printf : Neobvezno dodelite izhod spremenljivki.
Kako uporabiti ukaz printf pri skriptiranju bash z urejevalnikom Vim:
Za ta vodnik uporabljamo urejevalnik Vim zaradi njegove bogate funkcionalnosti in enostavnosti uporabe. Prenesite Vim v svojo napravo z uporabo:
$ sudo apt namestite vimZaženite urejevalnik vim:
$ vimNapišimo preprost program za tiskanje niza z uporabo “printf”:
#! / bin / bashprintf “Pozdravljeni Linuxhint”
Če želite datoteko shraniti, pritisniteEsc”, Da preklopite način in nato vtipkate “: W primer.sh "in nato"Enter ". Zdaj odprite novo okno terminala in vnesite:
Primer $ bash.shZgornji ukaz bo izvedel skript in natisnil besedilo "hello linuxhint", kot je prikazano spodaj:
Zdaj pa vključimo nekaj specifikatorjev formata:
#! / bin / bashprintf “% s \ n” “Pozdravljeni Linuxhint”
V zgornjem primeru »% s« pove, da je treba ustrezni argument za novo vrstico obravnavati kot niz in »\ n«. Podobno, če uporabimo »% d«, bo argument obravnavan kot celo število:
#! / bin / bashprintf “% s \ n” “Pozdravljeni Linuxhint” “Več o” “Linuxu”
Vsi trije argumenti bodo obravnavani kot niz in natisnjeni v novi vrstici, kot je prikazano v naslednjem izhodu:
Spodaj je omenjen še en primer za razumevanje uporabe ukaza „printf“:
#! / bin / bashecho "Vpiši svoje ime"
preberite ime
echo "Vnesite svojo starost"
bralna starost
printf “Vaše ime:% s \ nVaša starost:% s \ n” “$ ime” “$ starost”
"Vaše ime:% s \ n Vaša starost:% s \ n" je oblika, medtem ko je "$ name" Argumenti so "$ age". Medtem ko "% s" opozarja na argumente.
Kako uporabiti specifikatorje pretvorbe z ukazom printf:
Specifikatorji pretvorbe so znaki, ki se uporabljajo z znakom "%", da označijo, kako ravnati z argumenti. Preverimo seznam nekaterih pogosto uporabljenih specifikatorjev:
Specifikator | Dopis |
---|---|
%% | Natisne simbol "%" |
% c | Argumente jemlje kot en sam znak |
% e in% E | Argument vzemite s številom s plavajočo vejico in natisnite v eksponentnem zapisu, % e za male črke in % E za veliko začetnico |
% g in% G | Argument vzemite s številom s plavajočo vejico in natisnite v običajnem ali eksponentnem zapisu |
% f | Argument jemlje kot plavajoče številke |
% d | Argumente jemlje kot podpisana cela števila |
% u | Argument jemlje kot nepodpisana cela števila |
% o | Argument jemlje kot nepodpisano osmiško število |
% x in% X | Argumente jemlje kot nepodpisana šestnajstiška cela števila |
Nadalje obdelajmo zgornje specifikatorje s primerom v bash:
#! / bin / bashecho “Vnesite številko za pretvorbo”
branje številke
printf “Decimalno:% d \ nOktalno:% o \ nVeč:% X \ n” “$ number” “$ number” “$ number”
Kako uporabljati direktive Flag, Width in Precision z ukazom printf:
Direktive o zastavah so na voljo z neobvezno uporabo z ukazom "printf". Pogosto uporabljene direktive o zastavah so
- "-" Levo poravnajte izhod
- "+" Doda znak "+" s celim številom
- "0" Doda "0" s številko namesto presledkov
Direktive o širini dodajo prostor z izhodom, ki se običajno uporablja za zastavico. Razumimo na primeru:
#! / bin / bashecho "Vpiši svoje ime"
preberite ime
echo "Vnesite svojo starost"
bralna starost
printf “Vaše ime in starost sta:% 5s% 5d \ n” “$ name” “starost”
"% 30s" pomeni, da je prostor dolg 30 znakov, in če želite poravnati izhodni obrazec levo, uporabite znak "-" "% -30s".
Natančnost je sestavljena iz pike ".”Sledi pozitivno celo število:
#! / bin / bashprintf “%.2f ”2.56473
Rezultat bi bil:
Če je število celo število, bo direktiva o natančnosti pred številko dodala "0". Če je število s plavajočo vejico, bo direktiva o natančnosti določila število pozitivnih številk za decimalno vejico. Za niz določa število znakov za prikaz:
#! / bin / bashprintf “%.2f \ n ”2.468936
printf “%.3d \ n ”10
printf “%.3s \ n "" samlinux "
Parametri, ki so ušli nazaj
Parametri ubežne črte povratne poševnice, imenovani tudi zaporedja pobega, se s poševnico nazaj uporabljajo za oblikovanje niza z ukazom „printf“. Ta zaporedja se ne predstavljajo, temveč interpretirajo v nekaterih drugih znakih. Nekatera pogosto uporabljena ubežna zaporedja so:
Značaj | Opis |
---|---|
\\ | Natisne znak poševnice nazaj |
\ b | Natisne znak nazaj |
\ n | Natisne izhod v novo vrstico |
\ r | Natisne vrnitev nosilca (kazalec na začetku vrstice) |
\ t | Daje prostor na zavihku z desne |
\ v | Daje prostor na zavihku |
Zaključek:
Ko gre za tiskanje nečesa v bash skriptah, se najpogosteje uporablja ukaz “echo”, ker je enostaven za uporabo in zapomnitev. Toda ukaz "echo" ima svoje omejitve. Zato je za pravilno oblikovanje izhodne datoteke “Printf” ukaz. The “Printf” Ukaz vsebuje veliko možnosti za oblikovanje izhodnih nizov in celo pretvorbe in oblikovanje osnovnih števil. Ta vodnik s primeri natančno razume funkcionalnost ukaza „printf“ pri skriptiranju bash.