Каковы причины каждой строки в Make-файле, который будет выполняться в отдельной оболочке?

С другой стороны, я предполагаю, что Вы могли хлебать файл в переменную типа массив, связывающую каждую строку файла в массив [line_of_file_index] использование команды mapfile удара. Однако я не уверен, только ли это для Bash3 выше или Bash4.

http://wiki.bash-hackers.org/commands/builtin/mapfile

7
04.12.2012, 12:53
2 ответа

Я не могу сказать Вам, что объяснение сделать производителей, но одна оболочка на строку рецепта имеет смысл мне, в котором существует только одно состояние, которое будет сохранено и изменено, и это - состояние в сделать процессе. Кроме того, одна новая оболочка на строку гарантирует, что каждая строка делает то же самое каждый раз, когда это выполняется. Если это всегда были те же строки рецепта оболочки, и даже весь recipies мог бы иметь побочные эффекты друг на друге, и сделать процесс не имеет фактически никакого метода обнаружения, что является желаемым и что не... уже не говоря об управлении тем поведением. Оболочка на строку делает каждую строку атомарной, и процесс выполнения программы возвращается для создания, который дает намного больше питания сделать.

2
27.01.2020, 20:19

Я подозреваю, что причина, это обычно "делает" остановы, если существует ошибочный результат. Таким образом, если у Вас есть 3 отдельных команды, может быть мудро остановиться сразу, если команда № 1 перестала работать.

2
27.01.2020, 20:19

Теги

Похожие вопросы