Пожалуйста, помогите мне "бинарный оператор ожидается в Cygwin" - PullRequest
0 голосов
/ 01 декабря 2011

Я пытаюсь запустить скрипт Shell в Cygwin, но получаю следующие сообщения об ошибках:

app.sh: строка 215: clear: команда не найдена [: scripts / Test: ожидается двоичный оператор.Папка скриптов / Test ID не найдена ...

Может кто-нибудь подсказать.В чем проблема? Нужно ли мне заново устанавливать Cygwin.

Поскольку тот же скрипт отлично работает в среде Linux.

Заранее спасибо .....

1 Ответ

1 голос
/ 01 декабря 2011

скрипт, вероятно, использует '#! / Bin / sh', но ожидает поведение / bin / bash.Попробуйте выполнить скрипт как: / bin / bash shell_script.sh

Инструменты отладки включают в себя выполнение скрипта с параметром -x, т.е. bash -x shell_script.sh.Проблема с самого начала выглядит как неустановленная переменная, которая проверяется с помощью незащищенной формы:

if [ $x = ]

проблема в том, что если $ x не установлен, то в итоге вы получите пустой токен, который вызываетСбой сценария.

для явной команды 'clear' не найдена, реализация cygwin состоит в том, чтобы вызвать 'tput clear', если вы замените вызов 'clear' на 'tput clear', тогда он должен работать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...