“printf”Komanda bash skriptos darbojas tāpatprintf ()”Darbojas C valodā. Šajā amatā galvenā uzmanība tiks pievērstaprintf”Komandu, tās sintaksi un piemērus, kas sīkāk izskaidro šīs komandas izmantošanu. Pārbaudīsim “printfKomanda:
printf : Nav obligāti piešķirt izvadi mainīgajam.
Kā izmantot komandu printf bash skriptos, izmantojot Vim redaktoru:
Šajā ceļvedī mēs izmantojam Vim redaktoru tā bagātīgās funkcionalitātes un lietošanas ērtuma dēļ. Iegūstiet Vim savā ierīcē, izmantojot:
$ sudo apt install vimPalaist vim redaktoru:
$ vimUzrakstīsim vienkāršu programmu, lai drukātu virkni, izmantojot “printf”:
#! / bin / bashprintf “Sveiki Linuxhint”
Lai saglabātu failu, nospiediet “Esc”, Lai pārslēgtu režīmu un pēc tam ierakstītu “: W piemērs.sh ”un pēc tam“Enter ”. Tagad atveriet jaunu termināla logu un ierakstiet:
$ bash piemērs.shIepriekš minētā komanda izpildīs skriptu, izdrukājot tekstu “hello linuxhint”, kā parādīts zemāk:
Tagad iekļausim dažus formātu specifikatorus:
#! / bin / bashprintf “% s \ n” “Labdien Linuxhint”
Iepriekš minētajā piemērā “% s” norāda, ka atbilstošais arguments jaunajai rindai ir jāuzskata par virkni un “\ n”. Līdzīgi, ja izmantosim “% d”, arguments tiks uzskatīts par veselu skaitli:
#! / bin / bashprintf “% s \ n” “Labdien Linuxhint” “Uzziniet par” “Linux”
Visi trīs argumenti tiks uzskatīti par virkni un izdrukāti jaunā rindā, kā parādīts šādā izvadē:
Cits piemērs ir minēts tālāk, lai saprastu komandas “printf” lietošanu:
#! / bin / bashatbalss “Ievadi savu vārdu”
lasīt vārdu
atbalss “Ievadiet savu vecumu”
lasīšanas vecums
printf “Tavs vārds:% s \ nJūsu vecums:% s \ n” “$ name” “$ age”
“Jūsu vārds:% s \ n Jūsu vecums:% s \ n” ir formāts, bet “$ name” “$ Age” ir argumenti. Tā kā “% s” norāda argumentus.
Kā izmantot reklāmguvumu specifikatorus ar komandu printf:
Reklāmguvumu specifikatori ir rakstzīmes, kas tiek lietotas kopā ar zīmi “%”, lai norādītu, kā rīkoties ar argumentiem. Pārbaudīsim dažu parasti izmantoto specifikatoru sarakstu:
Specifikators | Daprakstīšana |
---|---|
%% | Izdrukā simbolu “%” |
% c | Argumentus uztver kā vienu rakstzīmi |
% e un% E | Veikt argumentu peldošā komata skaitlī un izdrukāt eksponenciālā apzīmējumā, % e mazajiem burtiem un % E lielajam burtam |
% g un% G | Paņemiet argumentu peldošā komata skaitlī un izdrukājiet normālā vai eksponenciālā apzīmējumā |
% f | Argumentu uzskata par peldošiem skaitļiem |
% d | Argumentus uzskata par parakstītiem veseliem skaitļiem |
% u | Argumentu uzskata par neparakstītiem veseliem skaitļiem |
% o | Uztver argumentu kā neparakstītu astotnieku |
% x un% X | Argumentus uztver kā neparakstītus heksadecimālos skaitļus |
Sīkāk izstrādāsim iepriekš minētos specifikatorus ar piemēru bash:
#! / bin / bashatbalss “Ievadiet konvertējamo numuru”
lasīt numuru
printf “Decimāls:% d \ nOctal:% o \ nHex:% X \ n” “$ numurs” “$ numurs” “$ numurs”
Kā izmantot Flag, Width un Precision direktīvas ar komandu printf:
Karodziņu direktīvas ir pieejamas pēc izvēles ar komandu “printf”. Parasti izmantotās karoga direktīvas ir
- “-” Kreisais attaisno izvadi
- “+” Pievieno “+” zīmi ar veselu skaitli
- “0” atstarpes vietā pievieno “0” ar skaitli
Platuma direktīvas papildina vietu ar izvadi, kas parasti tiek izmantota pēc karodziņa. Sapratīsim to ar piemēru:
#! / bin / bashatbalss “Ievadi savu vārdu”
lasīt vārdu
atbalss “Ievadiet savu vecumu”
lasīšanas vecums
printf “Jūsu vārds un vecums ir:% 5s% 5d \ n” “$ name” “age”
“% 30s” nozīmē, ka atstarpes garums ir 30 rakstzīmes, un, lai izlīdzinātu izvades veidlapu pa kreisi, izmantojiet zīmi “-” “% -30s”.
Precīzijas direktīva sastāv no punkta “.”Aiz pozitīvā veselā skaitļa:
#! / bin / bashprintf “%.2f ”2.56473
Rezultāts būtu:
Ja skaitlis ir vesels skaitlis, precizitātes direktīva pirms skaitļa pievienos “0”. Ja skaitlis ir peldošā komata tips, tad precizitātes direktīva noteiks pozitīvo ciparu skaitu aiz komata. Virknei tas norāda parādāmo rakstzīmju skaitu:
#! / bin / bashprintf “%.2f \ n ”2.468936
printf “%.3d \ n ”10
printf “%.3s \ n "" samlinux "
Backslash Escaped parametri:
Atpakaļsvītras aizbēgšanas parametrus, sauktus arī par glābšanās sekvencēm, izmanto ar slīpsvītru, lai formatētu virkni ar komandu “printf”. Šīs sekvences nepārstāv sevi, bet interpretē dažās citās rakstzīmēs. Dažas parasti izmantotās evakuācijas sekvences ir:
Raksturs | Apraksts |
---|---|
\\ | Izdrukā slīpsvītru |
\ b | Drukā atpakaļatkāpes rakstzīmi |
\ n | Izdrukā izvadi jaunā rindā |
\ r | Izdrukā atgriešanos ar karieti (kursors rindas sākumā) |
\ t | Piešķir vietu cilnei no labās puses |
\ v | Dod vietu cilnei |
Secinājums:
Kad kaut ko izdrukā bash skriptos, visbiežāk tiek izmantota komanda “echo”, jo to ir viegli lietot un atcerēties. Bet komandai “atbalss” ir ierobežojums. Tāpēc, lai pareizi formatētu izvadi, “Printf” komandu var izmantot. The “Printf” komandā ir daudz iespēju formatēt virknes izvadi un pat pamata skaitļu konvertēšanu un formatēšanu. Šajā rokasgrāmatā ir pamatoti izprasta komandas “printf” funkcionalitāte bash skriptu veidošanā ar piemēriem.