Как перенаправить список человекочитаемых путей в другую команду?

Обычно «облачные образы» настраиваются для работы в среде облачных вычислений IaaS (инфраструктура как услуга), например Amazon EC2 («общедоступное облако» поставщик - вы платите за лимитированные ресурсы у поставщика) или OpenStack (программное обеспечение для реализации вашей собственной среды IaaS).

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

Дополнительная конфигурация может включать оптимизацию производительности под конкретным провайдером или отсутствие брандмауэра с фильтром пакетов по умолчанию (поскольку по соглашению облачная среда предоставляет аналогичные функции через свои собственные API-интерфейсы на сетевом уровне). Но это будет варьироваться от дистрибутива к дистрибутиву.

Образы, распространяемые дистрибутивами, будут «запечатанными виртуальными машинами» в смысле, указанном в документе, на который вы ссылаетесь. То есть у них нет уникальных идентификаторов, и они готовы к предоставлению. Но у вас также может быть запечатанная виртуальная машина, предназначенная для другой цели (например, среда разработки, предназначенная для работы на вашем ноутбуке).

2
25.04.2017, 00:48
1 ответ

По какой конкретной причине вы используете найти? Похоже, это делает то, о чем вы просили:

find . -type f -name '*doc' -exec du -h "{}" \;

Тем не менее, если вы действительно действительно хотите использовать такой инструмент, как найти или найти и передать его ввода в качестве параметров другой программы, вы можете воспользоваться выходом и вводом с разделителями NUL, которые предоставляют некоторые инструменты. locate и find имеют опции (locate -0 и find -print0), что позволит вам иметь более дружественный программно вывод, который xargs предназначен для чтения с его аргументом -0:

find . -type f -name '*doc' -print0 | xargs -0 du -h

locate -0 '*doc' | xargs -0 du -h
4
27.01.2020, 21:59

Теги

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