2016-11-09 4 views
1

Also ich denke, das ist irgendwie verwandt mit meiner letzten question, aber ich frage mich, ob es eine Möglichkeit gab, eine Methode mit einer Befehlszeilenoption aufzurufen. Sagen Sie bitte eine Methode wie folgt hatte:Verwenden Sie eine Befehlszeilenoption, um eine Methode aufzurufen

def b 
puts "Hello brian" 
end 

ist es eine Möglichkeit, so etwas zu schreiben:

ruby mine.rb -b 

und bekommen diese

Hello brian 

Ich habe bereits versucht, für diese Online-Suche und habe OptionParser entdeckt, aber ich habe noch nichts entdeckt, was den OptionParser betrifft, der eine zuvor erstellte Methode aufruft.

Antwort

1

Je nach Anwendungsfall gibt es viele Möglichkeiten. Der folgende Code stammt aus dem Ruby docs mit der zusätzlichen Methode hinzugefügt.

Realistisch wäre wahrscheinlich eine Klasse, die die verschiedenen Optionen behandelt und die Methode kapselt, anstatt sie im Dateibereich zu haben.

Ich habe auch einen Shebang an der Spitze hinzugefügt, die automatisch Ruby aufrufen wird. Solange Ihre Skriptdatei ausführbar ist, können Sie sie direkt aufrufen (zB ./mine.rb -b).

+0

Oh, ich verstehe es jetzt! Ich danke dir sehr! – yukimoda

Verwandte Themen