Intereting Posts
Как вы получаете доступ к линейной звуковой карте в защитнике докеров Докер – дисковые квоты Кафка на AWS ECS, как обращаться с рекламой.host без известного экземпляра? Журналы вывода терминала AWS Разверните образ докеры из реестра с помощью основного auth Docker Commit Создал изображения и ENTRYPOINT Не удается увидеть страницу устаревшей установки док-станции wordpress на основе альпийского linux Где хранится токен API для Jenkins, используемый в Dockerfile Создание контейнера Docker с Cetnos7 apache и php. Как заставить Docker работать на ноутбуке Surface Pro 4 с Windows 10 есть ли способ непреднамеренно уничтожить контейнер докеров? Некоторые открытые порты Докера недоступны извне (dovecot, postfix) как конвертировать docker-compose.yml в Dockerrun.aws.json? Разрешение на доступ к моему локальному сайту разрешено Как запретить попытки использования межконтейнерной связи через входящую сеть в докере?

Как поместить эту команду в Makefile?

У меня есть следующая команда, которую я хочу выполнить в Makefile но я не уверен, как это сделать. Команда docker rmi -f $(docker images | grep "<none>" | awk "{print \$3}")

Команда, выполняемая между $(..) должна выводить вывод, который подается на docker rmi но это не работает из Makefile Я думаю, это потому, что $ используется специально в Makefile но я не уверен, как изменить команду чтобы поместиться там.

Есть идеи?

$ в Makefiles необходимо удвоить, чтобы предотвратить замещение make :

 docker rmi -f $$(docker images | grep "<none>" | awk "{print \$$3}") 

Кроме того, было бы проще использовать в команде awk строку с одиночными awk чтобы предотвратить расширение $3 оболочкой:

 docker rmi -f $$(docker images | grep "<none>" | awk '{print $$3}') 

Я действительно рекомендую последнее. Обычно лучше иметь код awk в одинарных кавычках, потому что он имеет тенденцию содержать много $ s, и все обратные косые черты ухудшают читаемость.