So when I call my script from the command line, I want it to take in an int and do something with the value:
ruby script.rb puts ARGV[0], etc...
However, whenever the script is loaded or required and not called from command line, I want to completely skip this part of the code. How can I detect whether the script has been called via command line, or just loaded? Thanks!
It is common to put this at the bottom of your script:
if __FILE__==$0 # this will only run if the script was the main, not load'd or require'd end
Because I like to see the main action at the top of my file, I usually put a def run!
as the first method in the file and then end the file with:
run! if __FILE__==$0
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With