в makefile создайте пустой файл, если файл не существует - PullRequest
0 голосов
/ 24 сентября 2018

в make-файле Я использую скрипт awk для выполнения некоторых манипуляций с текстом

$(phony xyz):
   awk 'some script' file1 file2 > output;

, делая это, если отсутствует какой-либо файл1 или файл2, это выдаст ошибку.поэтому я думаю о добавлении пустого файла, если файл уже не существует.
, как указано ниже

$(phony xyz):
   test -e file1 || echo "" > file1;
   test -e file2 || echo "" > file2;
   awk 'some script' file1 file2 > output;

, но это не работает.
Ex : еслиfile1 отсутствует, ошибка говорит о том, что file1 не существует, а затем он создает пустой файл «file1», а для file2 без каких-либо ошибок просто очищает файл, поэтому в конце оба файла становятся пустыми.

1 Ответ

0 голосов
/ 24 сентября 2018

Почему бы не добавить эти файлы в качестве предварительных условий и добавить правило для их построения, если они отсутствуют?

$(phony xyz): file1 file2
   awk 'some script' file1 file2 > output;

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