История изменений
Исправление KennyMinigun, (текущая версия) :
Смотря на оригинал поста (который в HTML сохранился): https://pic4a.ru/89/eMN.PNG
Видим, что ТС на самом деле спрашивал про
mkdir -p ${C_HOME}/build_info/c
: > ${C_HOME}/build_info/${J_NAME}_deploy_time
: > ${C_HOME}/build_info/${J_NAME}_version
Так вот
- Создаем директорию по пути
${C_HOME}/build_info/c
. Причем ключ-p
заставляет командуmkdir
создать целую цепочку из директорий (если что-то в пути не существует). Также с ключем-p
командаmkdir
не выдает ошибок если директория уже существует.${C_HOME}
(а также${J_NAME}
— подстановка значения переменных (C_HOME, J_NAME - имена переменных). Чтоб проверить что подставится можешь прямо перед сией твоей конструкцией написать:echo "C_HOME = $C_HOME" echo "J_NAME = $J_NAME"
- Команда
:
в bash синоним командеtrue
. Последняя абсолютно ничего не делает а только завершается с нулевым кодом возврата (=успех). Далее идет перенаправление STDOUT этой же команды в файл> ${C_HOME}/build_info/${J_NAME}_deploy_time
. Посколькуtrue
(aka:
) ничего не выводит на STDOUT, то имеем только побочный эффект от перенаправления: файл создается (или пересоздается) и остается пустым - То же самое что и в предыдущем пункте
Исходная версия KennyMinigun, :
Смотря на оригинал поста (который в HTML сохранятся): https://pic4a.ru/89/eMN.PNG
Видим, что ТС на самом деле спрашивал про
mkdir -p ${C_HOME}/build_info/c
: > ${C_HOME}/build_info/${J_NAME}_deploy_time
: > ${C_HOME}/build_info/${J_NAME}_version
Так вот
- Создаем директорию по пути
${C_HOME}/build_info/c
. Причем ключ-p
заставляет командуmkdir
создать целую цепочку из директорий (если что-то в пути не существует). Также с ключем-p
командаmkdir
не выдает ошибок если директория уже существует.${C_HOME}
(а также${J_NAME}
— подстановка значения переменных (C_HOME, J_NAME - имена переменных). Чтоб проверить что подставится можешь прямо перед сией твоей конструкцией написать:echo "C_HOME = $C_HOME" echo "J_NAME = $J_NAME"
- Команда
:
в bash синоним командеtrue
. Последняя абсолютно ничего не делает а только завершается с нулевым кодом возврата (=успех). Далее идет перенаправление STDOUT этой же команды в файл> ${C_HOME}/build_info/${J_NAME}_deploy_time
. Посколькуtrue
(aka:
) ничего не выводит на STDOUT, то имеем только побочный эффект от перенаправления: файл создается (или пересоздается) и остается пустым - То же самое что и в предыдущем пункте