n00b вопрос оповещения!вот проблема: я создаю сценарий оболочки, который принимает минимум 3 аргумента: строку, номер строки и хотя бы один файл.
Я написал скрипт, который будет принимать ТОЛЬКО 3 аргумента, но я не знаю, как обрабатывать несколько аргументов имени файла.
вот соответствующие части моего кода (пропуская запись обратно в файл и т. д.):
#!/usr/bin/env ruby
the_string = ARGV[0]
line_number = ARGV[1]
the_file = ARGV[2]
def insert_script(str, line_n, file)
f = file
s = str
ln = line_n.to_i
if (File.file? f)
read_in(f,ln,s)
else
puts "false"
end
end
def read_in(f,ln,s)
lines = File.readlines(f)
lines[ln] = s + "\n"
return lines
end
# run it
puts insert_script(the_string, line_number, the_file)
теперь язнаю, что легко написать блок, который будет перебирать ВСЕ аргументы:
ARGV.each do |a|
puts a
end
, но мне нужно ТОЛЬКО циклически перебирать аргументы от ARGV [2] (первое имя файла) до последнего имени файла,
Я знаю, что должен быть - как минимум - хотя бы один простой способ сделать это, но я просто не могу понять, что это на данный момент!
в любом случае - я был бы более чем счастлив, если бы кто-то мог просто указать мне на учебник или пример, я уверен, что есть много там - но я не могу их найти.
спасибо