私はRubyスクリプトを見ていましたが、に出くわしscript = $0
ました。私はいくつかのグーグルをしましたが、これが何をするかについて明確な答えを見つけられませんでした。メモリよりも大きいファイルを読み取ることからあなたを保護すると私は信じています、それは正しいですか?
おかげで、私はあなたが文脈でそれを見ることができるように以下の完全なスクリプトを持っています:
# Takes the name of a file as an argument and assigns to filename
filename = ARGV.first
script = $0
puts "We're going to erase #{filename}."
puts "If you don't want that, hit CTRL-C (^C)."
puts "If you do want that, hit RETURN."
print "? "
STDIN.gets
puts "Opening the file..."
target = File.open(filename, 'w')
puts "Truncating the file. Goodbye!"
target.truncate(target.size)
puts "Now I'm going to ask you for three lines."
print "line 1: "; line1 = STDIN.gets.chomp()
print "line 2: "; line2 = STDIN.gets.chomp()
print "line 3: "; line3 = STDIN.gets.chomp()
puts "I'm going to write these to the file."
target.write(line1)
target.write("\n")
target.write(line2)
target.write("\n")
target.write(line3)
target.write("\n")
puts "And finally, we close it."
target.close()