Вы можете использовать тройной:
[ -f test.txt ] && ./test -option 3,2 < test.txt || echo "" | ./test -option 3,2
Чтобы избежать повторения команды, вы также можете использовать:
CMD="./test -option 3,2"; [ -f test.txt ] && $CMD < test.txt || echo "" | $CMD
Также обратите внимание, что test
- это команда , рассмотрите возможность использования другого имени для вашей программы.