Raku kurss / Objekti, ievade/izvade un izņēmumi / Ievade un izvade / Ārējo programmu palaišana 🆕
run un shell
Ārēju programmu var palaist divējādi. Funkcija run ņem
komandu un tās argumentus kā atsevišķas vērtības un
palaiž programmu tieši, neiesaistot čaulu:
run 'echo', 'hello';Tas palaiž programmu echo ar vienu argumentu
hello, kas izdrukā hello. Tā kā argumenti tiek
padoti atsevišķi, nav riska, ka čaula nepareizi iztulkotu atstarpes vai
īpašās rakstzīmes — run ir drošais noklusējums.
Funkcija shell tā vietā padod sistēmas čaulai
vienu virkni, ko tā iztulko. Tas ļauj izmantot čaulas
iespējas, piemēram, caurules un novirzīšanu:
shell 'echo hello | tr a-z A-Z';Šeit čaula palaiž echo, izvada tā izvadi caur
tr un izdrukā HELLO. Ērtums nāk ar
brīdinājumu: tā kā čaula virkni parsē, shell komandas
būvēšana no neuzticamas ievades ir bīstama. Dodiet priekšroku
run, ja vien jums nav tieši vajadzīgas čaulas iespējas.
Abas atgriež Proc objektu, kas apraksta, kā programma
beidza darbu. Pēc noklusējuma palaistā programma dala jūsu programmas
izvadi, tāpēc tās izdrukātais parādās ekrānā. Lai šo izvadi tā vietā
noķertu, tā ir jāpieprasa — un tas ir nākamā temata priekšmets.
Prakse
Jūs gaida 1 viktorīna par šī temata saturu.
Kursa navigācija
← Ārējo programmu palaišana 🆕 | Viktorīna — Programmu palaišana →
💪 Vai arī dodieties tieši uz šīs sadaļas
vingrinājumiem.