У меня есть оболочка script с командой, которая кажется, что она должна работать, но вместо этого она терпит неудачу с нечетным завершенным/усеченным/поврежденным сообщением об ошибке. Пример:
$ ls -l myfile
-rw-r----- 1 me me 0 Aug 7 12:36 myfile
$ cat myscript
ls -l myfile
$ bash myscript
: No such file or directory
Файл явно существует, но даже если я этого не сделал, это сообщение об ошибке, которое я обычно получаю:
$ ls -l idontexist
ls: cannot access idontexist: No such file or directory
Обратите внимание на то, как он включает имя инструмента ls
, строку сообщения и имя файла, в то время как мой не работает.
Вот что я получу, если попытаюсь использовать mysql
вместо этого. Сообщение об ошибке выглядит как завернутое, и теперь начинается с цитаты:
Command: mysql -h myhost.example.com
Expected: ERROR 2005 (HY000): Unknown MySQL server host 'myhost.example.com' (0)
Actual: ' (0) 2005 (HY000): Unknown MySQL server host 'myhost.example.com
И вот моя тривиальная команда ssh, которая должна работать или, по крайней мере, дать нормальное сообщение об ошибке, но которая вместо этого завернута, чтобы начать с двоеточия и заканчивается странным сбиванием:
Command: ssh myhost
Expected: ssh: Could not resolve hostname myhost: Name or service not known
Actual: : Name or service not knownname myhost
Почему это происходит и как его исправить?