BASH programozás

Bash Printf parancs

Bash Printf parancs
A bash szkriptek használatával többnyire az „echo” parancsot használjuk bármilyen kimenet kinyomtatásához, amely kényelmes és könnyen használható, és legtöbbször megfelel a követelményeknek. De az egyszerűség korlátozással jár; az echo parancsnak megvan a maga korlátja a kimenet formázásában, ebben az esetben „printf”Parancs játszik.

A "printf”Parancs a bash szkriptben ugyanúgy működik”printf ()”C nyelven működik. Ez a bejegyzés a „printf”Parancsot, annak szintaxisát és példáit, amelyek tovább részletezik a parancs használatát. Ellenőrizzük a „printf”Parancs:

printf

: Nem kötelező kimenetet rendelni egy változóhoz.
: Ez egy olyan karaktersorozat, amely különböző formátummeghatározókat tartalmazhat, például: „% s”, „% b”, „% d”, „% f” és a visszavonásos escape
: Az argumentumok bármilyen értékűek vagy változóak lehetnek

A printf parancs használata a bash szkriptekben a Vim szerkesztő használatával:

Gazdag funkcionalitása és egyszerű kezelhetősége miatt a Vim szerkesztőt használjuk ebben az útmutatóban. Töltse le a Vim eszközt a következő eszközökkel:

$ sudo apt install vim

Indítsa el a VIM szerkesztőt:

$ vim

Írjunk egy egyszerű programot egy karakterlánc nyomtatására a „printf” használatával:

#! / bin / bash
printf “Hello Linuxhint”

A fájl mentéséhez nyomja meg aKilépés”Gomb az üzemmód váltásához, majd gépeléshez “: W példa.sh ”, majdEnter ”. Most nyisson meg egy új terminálablakot, és írja be:

$ bash példa.SH

A fenti parancs végrehajtja a szkriptet a „hello linuxhint” szöveget az alábbiak szerint kinyomtatva:

Most vegyünk fel néhány formátummeghatározót:

#! / bin / bash
printf “% s \ n” “Hello Linuxhint”

A fenti példában a „% s” azt mondja, hogy a megfelelő argumentumot karakterláncként és „\ n” -ként kell kezelni az új sor esetében. Hasonlóképpen, ha „% d” -t használunk, akkor az argumentum egész számként fog kezelni:

#! / bin / bash
printf “% s \ n” “Hello Linuxhint” “Tudjon meg többet a“ Linuxról ”

Mindhárom argumentumot karaktersorozatként kezeljük, és új sorban nyomtatjuk, amint azt a következő kimenet mutatja:

Az alábbiakban egy másik példát említünk, hogy megértsük a „printf” parancs használatát:

#! / bin / bash
visszhang „Írja be a nevét”
olvassa el a nevet
visszhang „Írja be az életkorát”
olvasás kora
printf “A te neved:% s \ nAz életkorod:% s \ n” “$ name” “$ age”

„A neved:% s \ n Korod:% s \ n” formátum, míg a „$ name” A „$ age” az érvek. Míg „% s” az érveket mutatva.

Konverziós specifikátorok használata printf paranccsal:

A konverzióspecifikátorok olyan karakterek, amelyeket a „%” előjellel használnak az argumentumok kezelésének jelzésére. Ellenőrizzük néhány általánosan használt specifikátor listáját:

Specifikátor Dleírás
%% „%” Szimbólumot nyomtat
% c Az érveket egyetlen karakterként veszi fel
% e és% E Vegyünk argumentumot lebegőpontos számban, és nyomatokat exponenciális jelöléssel, % e kisbetû és % E nagybetűvel
% g és% G Vegyünk argumentumot lebegőpontos számban, nyomatokat normál vagy exponenciális jelöléssel
% f Az érvelést lebegő számként veszi fel
% d Az argumentumokat aláírt egész számként veszi fel
% u Az argumentumot aláíratlan egész számként veszi fel
% o Az argumentumot előjel nélküli oktális számnak tekinti
% x és% X Az argumentumokat aláíratlan hexadecimális egész számként veszi fel

Fejlesszük tovább a fenti specifikációkat egy példával a bash-ban:

#! / bin / bash
echo „Írjon be egy számot az átalakításhoz”
olvasási szám
printf “Tizedes:% d \ nOctal:% o \ nHex:% X \ n” “$ szám” “$ szám” “$ szám”

A Flagf, Width és Precision direktívák használata printf paranccsal:

A jelző irányelvek opcionálisan használhatók a „printf” paranccsal. Az általánosan használt zászló irányelvek

  • A „-” bal igazolja a kimenetet
  • „+” Egész számmal egészíti ki a „+” jelet
  • „0” A „0” számot ad szóköz helyett

A szélességi irányelvek helyet adnak a kimenettel, amelyet általában a zászló után használnak. Értsük meg egy példával:

#! / bin / bash
visszhang „Írja be a nevét”
olvassa el a nevet
visszhang „Írja be az életkorát”
olvasás kora
printf „Ön neve és életkora:% 5s% 5d \ n” „$ name” „age”

A „% 30s” azt jelenti, hogy a szóköz 30 karakter hosszú, és a kimeneti űrlap balra igazításához használja a „-” jelet „% -30s”.

A precíziós irányelv a „.”Pozitív egész szám követi:

#! / bin / bash
printf “%.2f ”2.56473

A kimenet a következő lenne:

Ha a szám egész szám, a precíziós irányelv a szám elé „0” -t tesz. Ha a szám lebegőpontos, akkor a precíziós irányelv meghatározza a tizedesjegy utáni pozitív számjegyek számát. Karaktersorozat esetén megadja a megjelenítendő karakterek számát:

#! / bin / bash
printf “%.2f \ n ”2.468936
printf “%.3d \ n ”10
printf “%.3s \ n "" samlinux "

Backslash Escaped paraméterek:

A visszavágásos menekülési paramétereket, más néven menekülési szekvenciákat, egy visszavágó karakterrel használják a karaktersorozat formázására a „printf” paranccsal. Ezek a szekvenciák nem önmagukat képviselik, hanem néhány más karakterben értelmezik őket. Néhány gyakran használt menekülési szekvencia:

karakter Leírás
\\ Backslash karaktert nyomtat
\ b Backspace karaktert nyomtat
\ n Kimenetet nyomtat egy új sorba
\ r Kiírja a kocsi visszaútját (kurzor a sor elején)
\ t Helyet ad a fülnek jobbról
\ v Helyet ad a fülnek

Következtetés:

Ha valamit bash szkriptben kell kinyomtatni, akkor az „echo” parancsot használják leggyakrabban, mert könnyen kezelhető és megjegyezhető. De az „echo” parancsnak van korlátja. Ezért a kimenet megfelelő formázásához a „Printf” parancs használható. A „Printf” A parancs rengeteg opcióval rendelkezik a karakterlánc kimenetének formázására, sőt az alapszámok átalakítására és formázására is. Ez az útmutató példákkal alaposan átfogja a „printf” parancs bash szkriptekben történő működését.

Az Xdotool használata az egérkattintások és a billentyűleütések ösztönzéséhez Linux alatt
Az Xdotool egy ingyenes és nyílt forráskódú parancssori eszköz az egérkattintások és a billentyűleütések szimulálására. Ez a cikk egy rövid útmutatót ...
A top 5 ergonómikus számítógépes egértermék Linuxhoz
Hosszan tartó számítógép-használat okoz-e fájdalmat a csuklóján vagy az ujjain?? Merev ízületek szenvednek, és folyamatosan kezet kell rázniuk? Égő fá...
Az egér és az érintőpad beállításainak módosítása az Xinput használatával Linux alatt
A legtöbb Linux disztribúció alapértelmezés szerint „libinput” könyvtárral szállítja a rendszer bemeneti eseményeit. Feldolgozhatja a Wayland és az X ...