Test (Unix) - Biblioteka.sk

Panta Rhei Doprava Zadarmo


A | B | C | D | E | F | G | H | CH | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

Test (Unix)
test
Základné informácie
Vývojárrôzni open-source a komerční vývojári
Vyvinutý vC
Operačný systémUnix, Unix-like, Plan 9, IBM i
Licenciacoreutils: GPLv3+
Plan 9: MIT License

Pozri aj Informačný portál

test je program nachádzajúci sa v Unixových systémoch. Slúži na vyhodnotenie výrazu, ktorý je v danom formáte odovzdaný ako argument na príkazovom riadku.[1][2] Často sa používa pri vyhodnocovaní podmienok v shelloch (napr. bash). Pomocou tohto príkazu možno overovať vlastnosti súborov alebo textových reťazcov.

Synonymom tohto príkazu je (koncovú hranatú zátvorku).[3] Pri skriptovaní v unixových shelloch sa namiesto test vyraz viac používa ekvivalentný variant , ktorý sa viac podobá programátorskému zápisu.

Opis

Príkaz test v Unixe vyhodnocuje parameter vyraz. V novších implementáciach shellu je priamo zabudovaným príkazom, ale stále existujú i externé verzie.[3] V druhej podobe tohto príkazu musia byť (hranaté zátvorky) obklopené medzerami (pretože

Príkaz test by sa nemal zamieňať za , ktorý sa objavil v ksh88. nie je príkaz, ale súčasťou syntaxe ksh88 a neaplikuje substitúcie v názvoch súborov vo výrazoch s globom.[4]

Verziu test prítomnú v GNU coreutils napísali Kevin Braunsdorf a Matthew Bradburn.[5] Tento príkaz je prítomný ako samostatný balík pre Microsoft Windows ako súčasť kolekcie UnxUtils natívnych Win32 portov bežných GNU Unix-like utilít.[6] Príkaz test bol takisto portnutý pre operačný systém IBM i.[7]

Príkaz test sa používa jedným z nasledovných spôsobov:[3]

test vyraz
 vyraz 
 vyraz 

Prepínače, s ktorými je možné volať príkaz test:

-e NazovSuboru – vráti hodnotu 0 (pravda) ak súbor NazovSuboru existuje

Ďalšie prepínače potom rozširujú funkcionalitu prepínača -e v zmysle, že vracajú hodnotu 0 (pravda), ak súbor existuje a zároveň spĺňa niektoré ďalšie kritérium:[3][8]

-b NazovSuboru – NazovSuboru je blokový špeciálny súbor
-c NazovSuboru – NazovSuboru je znakový špeciálny súbor
-d NazovSuboru – NazovSuboru je adresár 
-f NazovSuboru – NazovSuboru je bežný súbor
-g NazovSuboru – NazovSuboru má nastavený Group ID príznak
-h NazovSuboru – NazovSuboru je symbolický odkaz
-k NazovSuboru – NazovSuboru má nastavený sticky bit príznak
-L NazovSuboru – NazovSuboru je symbolický odkaz
-p NazovSuboru – NazovSuboru je pomenované zreťazenie (named pipe, FIFO)
-r NazovSuboru – NazovSuboru je čitateľný aktuálnym procesom
-s NazovSuboru – NazovSuboru má nenulovú veľkosť
-t DeskriptorSuboru – DeskriptorSuboru je otvorený a asociovaný s terminálom
-u NazovSuboru – NazovSuboru má nastavený User ID príznak
-w NazovSuboru – NazovSuboru je zapisovateľný aktuálnym procesom
-x NazovSuboru – NazovSuboru má nastavený príznak spúšťateľného súboru

Tento zoznam nie je kompletný.

Návratová hodnota

upraviť | upraviť zdroj

Podľa toho, či program prebehol správne, vracia jednu z troch návratových hodnôt:[3]

  • 0, ak je hodnota vyraz pravdivá
  • 1, ak je hodnota vyraz nepravdivá alebo úplne chýba
  • >1, ak došlo k nejakej chybe

Na overenie toho, či súbor neexistuje alebo je prázdny, možno použiť nasledujúce príkazy:

 if test ! -s "$1"
 then
   echo $1 neexistuje alebo je prázdny.
 fi

Ak súbor, ktorý je špecifikovaný prvým pozičným parametrom shellového procesu, $1, neexistuje alebo je jeho veľkosť nulová, vypíše sa uvedená správa. Ak parameter $1 existuje a má nenulovú veľkosť, nezobrazí sa žiadna správa. V príkaze musí byť medzera medzi -s a názvom súboru.

Parameter $1 je v úvodzovkách, aby sa zaručilo, že test bude fungovať správne, i keď $1 je prázdny textový reťazec. Ak sa nepoužijú úvodzovky a $1 je prázdny textový reťazec, príkaz test zobrazí chybovú hlášku:

test: argument expected.
  1. Linux test Command Tutorial for Beginners (with Examples) online. HowtoForge, cit. 2023-09-15. Dostupné online. (po anglicky)
  2. Linux Test Command Information and Examples online. www.computerhope.com, cit. 2023-09-15. Dostupné online. (po anglicky)
  3. a b c d e test Man Page - Linux - SS64.com online. ss64.com, cit. 2023-09-15. Dostupné online.
  4. ksh88 - man pages section 1: User Commands online. docs.oracle.com, cit. 2023-09-15. Dostupné online.
  5. test(1) — coreutils — Debian buster — Debian Manpages
  6. Native Win32 ports of some GNU utilities online. . Dostupné online.
  7. IBM. IBM System i Version 7.2 Programming Qshell online. . Dostupné online. (po anglicky)
  8. test man page online. linuxcommand.org, cit. 2023-09-15. Dostupné online.

Tento článok je čiastočný alebo úplný preklad článkov test (Unix) na českej Wikipédii a test (Unix) na anglickej Wikipédii.

Zdroj:
Text je dostupný za podmienok Creative Commons Attribution/Share-Alike License 3.0 Unported; prípadne za ďalších podmienok. Podrobnejšie informácie nájdete na stránke Podmienky použitia.
Zdroj: Wikipedia.org - čítajte viac o Test (Unix)





Text je dostupný za podmienok Creative Commons Attribution/Share-Alike License 3.0 Unported; prípadne za ďalších podmienok.
Podrobnejšie informácie nájdete na stránke Podmienky použitia.

Your browser doesn’t support the object tag.

www.astronomia.sk | www.biologia.sk | www.botanika.sk | www.dejiny.sk | www.economy.sk | www.elektrotechnika.sk | www.estetika.sk | www.farmakologia.sk | www.filozofia.sk | Fyzika | www.futurologia.sk | www.genetika.sk | www.chemia.sk | www.lingvistika.sk | www.politologia.sk | www.psychologia.sk | www.sexuologia.sk | www.sociologia.sk | www.veda.sk I www.zoologia.sk