У меня есть скрипт, который принимает команду и выполняет ее на удаленном хосте. Работает нормально, например:
$ rexec "ant build_all"
выполнит команду ant build_all на удаленной системе (передав ее через SSH и т. Д.).
Поскольку я ленивый, я хочу настроить псевдоним для этой команды (и, в конечном счете, для нескольких других), такой, чтобы, например, я мог просто вызвать
$ rant build_all
и bash автоматически вызовет
$ rexec "ant build_all"
Я пытался сделать это с псевдонимом, но если я определю
alias rant=rexec ant
тогда любые аргументы, переданные "rant", будут просто добавлены в конец, например, так:
$ rant build_all -Dtarget=Win32
(interpreted as:)
$ rexec "ant" build_all -Dtarget=Win32
Это терпит неудачу, потому что rexec действительно принимает только один аргумент и игнорирует остальные.
Возможно, я мог бы сделать это с помощью скрипта-оболочки bash, но мне было интересно, есть ли в bash какие-либо встроенные модули для этого, возможно, версия псевдонима с именованным аргументом или перловая команда строки цитаты (например qw /// или что-то в этом роде.