Raku kurss / Objekti, ievade/izvade un izņēmumi / Ievade un izvade / Ārējo programmu palaišana 🆕
Vide
Katra programma tiek palaista ar vides mainīgo kopu —
nosauktām vērtībām, piemēram, HOME, PATH vai
USER, ko nodrošina operētājsistēma. Raku tie ir pieejami
dinamiskajā jauktenī %*ENV:
say %*ENV<HOME>; # the home directory, e.g. /home/annaVides mainīgo nolasāt, indeksējot %*ENV ar tā nosaukumu.
Tā kā tas ir parasts jauktenis, varat arī pārbaudīt, vai mainīgais ir
uzstādīts, vai mainīt to programmām, ko palaižat:
%*ENV<GREETING> = 'Hello';
say %*ENV<GREETING>; # HelloUzstādot atslēgu %*ENV, tā tiek pievienota videi, ko
mantos jebkura programma, kuru pēc tam palaidīsiet ar run
vai shell, un tā konfigurāciju padod bērnprogrammai:
%*ENV<GREETING> = 'Hello';
my $proc = run 'sh', '-c', 'echo $GREETING', :out;
say $proc.out.slurp(:close).chomp; # HelloMainīgais tiek uzstādīts jūsu programmas vidē pirms bērna
palaišanas, tāpēc čaulai, ko palaiž run,
GREETING savā vidē jau ir un tā to var atbalsot atpakaļ.
Katrs šādi uzstādītais mainīgais sasniedz katru programmu, ko palaižat
pēc tam.
Tvigils * pasaka, ka %*ENV ir dinamisks
mainīgais, tāpat kā $*OUT daļā par ievadi un izvadi. Vēl
daži zvaigžņotie mainīgie apraksta darbojošās programmas pasauli —
@*ARGS satur komandrindas argumentus, un
$*PROGRAM-NAME ir paša skripta nosaukums. Kopā tie ļauj
programmai saprast kontekstu, kurā tā palaista.
Prakse
Jūs gaida 1 viktorīna par šī temata saturu.
Kursa navigācija
← Viktorīna — Proc objekts | Viktorīna — Vide →
💪 Vai arī dodieties tieši uz šīs sadaļas
vingrinājumiem.