У меня следующий вопрос:
Когда я выполняю следующий скрипт прямо в окне терминала, команды ведут себя как положено.
$ diff <(echo tmp) <(echo tmp1)
1c1
< tmp
---
> tmp1
Однако, когда я пишу ту же команду в сценарии оболочки
#! /bin/bash
diff <(echo tmp) <(echo tmp1)
Я получаю следующее сообщение об ошибке:
$ sh test.sh
test.sh: line 2: syntax error near unexpected token `('
test.sh: line 2: ` diff <(echo tmp) <(echo tmp1)'
Первоначально я думал, что это проблема с diff, но это также происходит с другими командами. У кого-нибудь есть идея, что вызывает проблему?