Запретить ssh разбивать параметры сценария оболочки

У меня есть сценарий, который, по сути, является оболочкой для исполняемого файла с тем же именем на другой машине. Для примера я оберну здесь printf. Мой текущий сценарий выглядит так:

#!/bin/bash
ssh user@hostname.tld. printf "$@"

К сожалению, он прерывается, когда один из аргументов содержит пробел, например Я ожидаю, что следующие команды дадут идентичный результат.:

~$ ./wrap_printf "%s_%s" "hello world" "1"
hello_world1_
~$ printf "%s_%s" "hello world" "1"
hello world_1

Проблема становится еще хуже, когда задействованы (экранированные) символы новой строки. Как мне правильно избежать моих аргументов?

6
задан Ondergetekende 6 July 2011 в 06:29
поделиться