Как запустить команду и проверить статус выхода из Windows make files

#windows #makefile #build #gnu-make

#Windows #makefile #сборка #gnu-make

Вопрос:

Я новичок в Windows make files.Я пытаюсь понять несколько вещей. Как запускать команды (команды DOS) из файлов Windows mk. Я выполнил следующую команду из командной строки cmd—

 find testsuite 
 

и это дает правильный вывод. Теперь я пытаюсь запустить то же самое из файла Windows mk следующим образом — $(shell find testsuite). Однако это выдает ошибку «НАЙТИ: неверный формат параметра». Является ли $(командное имя оболочки …) правильным способом или, если нет, что указывает $(shell …)? Также как получить статус выхода команды.Добавление лог-строки, как показано ниже, после команды ничего не выводит $ (предупреждение $ (уровень ошибок)

Ответ №1:

Однако это выдает ошибку «НАЙТИ: неверный формат параметра».

Это собственная find утилита Windows. Он ищет строки в файлах, вроде grep как без регулярных выражений :-(. Поэтому для этого требуется как минимум два аргумента.

Также как получить статус выхода команды.

Для $(shell ...) функции это в .SHELLSTATUS переменной.

Комментарии:

1. Спасибо за ответ, я новичок в этом, поэтому мне нужно еще несколько объяснений. в принципе, какую утилиту вызывает $(shell find ..) ?

2. То же, что вызывается в рецептах: $(SHELL) $(.SHELLFLAGS) ... . Читать это .