Случайное поведение «команда не найдена» в скрипте bash, которое принимает только часть команды - PullRequest
0 голосов
/ 03 апреля 2012

Я столкнулся с действительно странной проблемой в скрипте Bash и хотел бы знать, если у кого-то уже была эта проблема. Мой скрипт в основном генерирует случайные ошибки «команда не найдена» в определенной строке, но не всегда с одной и той же «командой». Вот пример:

    ./myscript.sh: line 193: e: command not found
    ./myscript.sh: line 194: iles: command not found
    ./myscript.sh: line 194: ge_files: command not found

А вот инкриминированные строки

184 for SERVER in `echo $SERVERS` ; do
185 - 192 Do some stuff...
193 done
194 merge_files

(merge_files - это функция, которая была ранее объявлена ​​в скрипте.)

Значит, проблема в том, что он время от времени разделяет эти строки? Это действительно кажется случайным, поскольку не всегда ломается, просто иногда (я полагаю, что-то не так во вводе скрипта? Я разбираю логи)

Кто-нибудь когда-нибудь сталкивался с этим?

1 Ответ

0 голосов
/ 03 апреля 2012

Может быть, любая из ваших команд (ffmpeg?) Читает со стандартного ввода, который усекает команды, так что вы видите только их часть. Попробуйте добавить < /dev/null к вашим командам, чтобы увидеть, если это проблема

...