Ruby Language
Speciale constanten in Ruby
Zoeken…
__HET DOSSIER__
Is het relatieve pad naar het bestand uit de huidige uitvoeringsmap
Stel dat we deze mapstructuur hebben: /home/stackoverflow/script.rb
script.rb bevat:
puts __FILE__
Als je binnen bent / home / StackOverflow en voer het script zoals ruby script.rb
dan __FILE__
zal de uitgang van script.rb
als je binnen / home dan zal de uitgang van stackoverflow/script.rb
Zeer handig om het pad van het script te krijgen in versies vóór 2.0 waarin __dir__
niet bestaat.
Opmerking __FILE__
is niet gelijk aan __dir__
__dir__
__dir__
is geen constante maar een functie
__dir__
is gelijk aan File.dirname(File.realpath(__FILE__))
$ PROGRAM_NAME of $ 0
Bevat de naam van het script dat wordt uitgevoerd.
Is hetzelfde als __FILE__
als u dat script uitvoert.
$$
Het procesnummer van de Ruby die dit script uitvoert
$ 1, $ 2, enz
Bevat het subpatroon uit de overeenkomstige set haakjes in het laatst geslaagde matched patroon, geen patronen gematcht in geneste blokken die al zijn verlaten, of nul als de laatste match van het patroon is mislukt. Deze variabelen zijn allemaal alleen-lezen.
ARGV of $ *
Opdrachtregelargumenten gegeven voor het script. De opties voor Ruby-interpreter zijn al verwijderd.
STDIN
De standaard invoer. De standaardwaarde voor $ stdin
STDOUT
De standaard output. De standaardwaarde voor $ stdout
STDERR
De standaard foutoutput. De standaardwaarde voor $ stderr
$ stderr
De huidige standaardfoutoutput.
$ stdout
De huidige standaarduitvoer
$ stdin
De huidige standaardinvoer
ENV
Het hash-achtige object bevat huidige omgevingsvariabelen. Een waarde instellen in ENV verandert de omgeving voor onderliggende processen.