while IFS='=' read -r name value; do new_name="TF_ENV${name#proj_env_repo}" export "$new_name=$value" unset "$name" done < <( printenv | grep proj_env_repo )
Секретные ингредиенты здесь:
IFS='=' read -r name value
--использует знак = для разделения входящей строки на составные части. Инкрементный режим используется для сборки массива, в основном при запуске системы или подключении дисков RAID. По сути, это способ сказать MD: «Я нашел этот диск с метаданными MD на нем, попробуйте сделать из него массив». Как только вы добавите все диски, необходимые для запуска массива, он будет автоматически запущен (, т.е. после того, как последний диск RAID обнаружен во время загрузки или подключен ).
Простой пример с RAID0 с 2 дисками:
$ sudo mdadm --incremental /dev/sdb
mdadm: /dev/sdb attached to /dev/md/127, not enough to start (1).
$ sudo mdadm --incremental /dev/sdc
mdadm: /dev/sdc attached to /dev/md/127, which has been started.
Если вы используете --incremental
вместе с --fail
, это удалит устройство из массива (, даже если устройство вообще недоступно, например. /dev/sdX
не существует, вы все равно можете удалить его из массива ). Это используется для замены неисправных или отсутствующих дисков.