Попробуйте использовать puts @cmd
, чтобы увидеть сгенерированную команду и посмотреть, соответствует ли она вашей цели. Если это так, попробуйте выполнить его из терминала, чтобы проверить, работает ли ваш сценарий оболочки. Я думаю, что значения параметров @file.id
и @filename
могут быть nil
, поэтому при интерполяции оно будет заменено на "". ставит свои значения также для проверки.