Linux: подмена имени бинарника — какие непредсказуемые последствия?
1. Это абсолютно нормальный подход.
2. Если вызов проги - последнее действие скрипта, то лучше делать не подпроцесс, а замещать текущий процесс прогой, что экономит немного памяти и сохраняет отношения parent-child для сигналов (т.е. после отработки скрипта родительская прога получит абсолютно такое же состояние дочернего процесса, как и до подмены проги на скрипт):#!/bin/sh

# некоторые действия: 
# обработка входных параметров, 
# установка дополнительных переменных окружения, 
# и т.д. ...

exec path_to_dir/progX_orig $*
3. Параметры в прогу лучше передавать так, как они были переданы в скрипт, а конструкция  $* произведёт репарсинг аргументов.
Т.е. последняя строчка, с учётом п.2, на мой взгляд, должна выглядеть такexec path_to_dir/progX_orig "$@"
Зависит от того, что это за бинарник progX и кто его еще использует.