Různé příklady vytvoření ukazatele průběhu v Bash
Různé způsoby implementace ukazatele průběhu v Bash jsou uvedeny v této části tutoriálu.
Příklad 1: Implementujte jednoduchý ukazatel průběhu bez jakéhokoli příkazu
Vytvořte soubor Bash pomocí následujícího skriptu, který zobrazuje ukazatel průběhu pomocí znaku „#“ a příkazu „sleep“. Pro zobrazení ukazatele průběhu se zde používá příkaz „printf“. Ukazatel průběhu je rozdělen do čtyř částí. Po 1 sekundě se zobrazí 25 %. Po 3 sekundách se zobrazí 50 %. Po 2 sekundách se zobrazí 75 %. Po 1 sekundě se zobrazí 100 %.
#!/bin/bash
printf ' \n Počkejte na dokončení úkolu... \n \n '
#Počkejte 1 sekundu
spát 1
#Vytiskněte první část ukazatele průběhu
printf '[#####] 25 %% hotovo. \r '
#Počkejte 3 sekundy
spát 3
#Vytiskněte druhou část ukazatele průběhu
printf '[########## ] 50 %% hotovo. \r '
#Počkejte 2 sekundy
spát 2
#Vytiskněte třetí část ukazatele průběhu
printf '[############### ] 75 %% dokončeno. \r '
#Počkejte 1 sekundu
spát 1
#Vytiskněte poslední ukazatel průběhu
printf '[####################] 100 %% dokončeno. \r '
printf ' \n \n Úkol splněn. \n \n '
.
Po 1 sekundě od spuštění skriptu se objeví následující výstup:
Po 7 sekundách od spuštění skriptu se zobrazí následující výstup:
Příklad 2: Implementace ukazatele průběhu pomocí příkazu „Pv“.
Úplná forma příkazu „pv“ je „prohlížeč potrubí“. Používá se ke sledování průběhu dat procházejících kanálem a zobrazení indikátoru průběhu na základě velikosti dat. Tento příkaz není ve výchozím nastavení v systému nainstalován. Před procvičováním skriptu z tohoto příkladu spusťte následující příkaz k instalaci příkazu „pv“:
$ sudo apt Nainstalujte pvMusíte vybrat soubor velké velikosti, který se zkopíruje z jednoho umístění do jiného. Vytvořte soubor Bash pomocí následujícího skriptu, který zkopíruje soubor „test.txt“ z aktuálního umístění do umístění „/home/fahmida/temp/“. Příkaz „pv“ se zde používá k zobrazení ukazatele průběhu. Ukazatel průběhu se zobrazuje na základě velikosti souboru „test.txt“.
#!/bin/bashecho 'Kopírování souboru z jednoho umístění do jiného.'
#Počkejte 2 sekundy
spát 2
# Zkopírujte soubor do cíle
kočka test.txt | pv -s $ ( stat -C % s test.txt ) > / Domov / porozumění / tepl / test.txt
echo 'Soubor byl zkopírován.'
Po dokončení spuštění skriptu se zobrazí následující výstup:
Příklad 3: Implementace ukazatele průběhu pomocí příkazu „Dialog“.
Dalším způsobem implementace ukazatele průběhu v Bash je použití příkazu „dialog“. Tento příkaz lze použít k zobrazení dobře vypadajícího ukazatele průběhu v terminálu. Pomocí tohoto ukazatele průběhu lze zobrazit mnoho typů widgetů. Úlohu ukazatele průběhu, který je zobrazen tímto příkazem, lze ovládat skriptem Bash. Tento indikátor průběhu není ve výchozím nastavení v systému nainstalován. Chcete-li nainstalovat tento indikátor průběhu do systému, spusťte následující příkaz:
$ sudo apt Nainstalujte dialogVytvořte soubor Bash pomocí následujícího skriptu, který zobrazí ukazatel průběhu pomocí příkazu „dialog“. Úloha zkopírovat soubor „/etc/passwd“ do umístění „/home/fahmida/tempdir“ se zobrazí pomocí ukazatele průběhu. Ukazatel průběhu je rozdělen do pěti částí; každá část se zobrazí po 2 sekundách. Volba –title se používá v příkazu „dialog“ k zobrazení názvu ukazatele průběhu. Volba –gauge se používá v příkazu „dialog“ k zobrazení ukazatele průběhu s výškou 10 řádků a šířkou 100 znaků. Nad ukazatelem průběhu se zobrazí zpráva „Čekání na dokončení úkolu“.
#!/bin/bash#Inicializujte počítadlo
aktuální_pos = 0
(
#Definujte nekonečnou smyčku
pro ( ( ;; ) )
dělat
kočka <
oddělovač
$current_pos
# Zobrazit aktuální hodnotu počítadla
cp /etc/passwd do /home/fahmida/tempdir ( $current_pos%):
oddělovač
EOF
#Zvyšte počítadlo o 20
( ( aktuální_pos+= dvacet ) )
#Ukončete smyčku, když je hodnota čítače větší než 100
[ $current_pos -gt 100 ] && přestávka
# Po každém zvýšení počkejte 2 sekundy
spát 2
Hotovo
) | dialog --titul 'Kopírování souboru...' --rozchod 'Čekání na dokončení úkolu' 10 100 0
Po 6 sekundách od spuštění skriptu se zobrazí následující výstup:
Po 10 sekundách od spuštění skriptu se zobrazí následující výstup:
Závěr
Různé způsoby vývoje ukazatele průběhu pomocí skriptu Bash jsou uvedeny v tomto tutoriálu, který uživatelům Bash pomáhá používat ukazatel průběhu v jejich programu.