Назад | Перейти на главную страницу

Пустой файл журнала, если% post содержит обратный тик или подстановку команд

При создании пользовательского установщика USB для Centos6.6 (непросто) я обнаружил, что если в разделе% post файла кикстарта есть обратные кавычки

Это работает

%pre --log=/root/postLog.log
echo "This is the post"
ls
%end

Это не работает

%pre --log=/root/postLog.log
echo "This is the post"
echo `ls`
%end

Это тоже не работает

%pre --log=/root/postLog.log
echo "This is the post"
echo $(ls)
%end

Зачем? У меня есть много вещей, которые мне нужно сделать в посте%, и отсутствие поддержки подстановки команд / обратного тика сделает это более трудным.

Есть обходной путь?

Изменить: А зачем мне обратные кавычки?

Программа установки предназначена для продукта устройства, поэтому необходимо установить базовую ОС, пользовательские пакеты обновления для ОС и пакеты обновления для продукта.

Итак, в разделе% post очень часто встречается что-то вроде этого шаблона:

cd $ApplicationPackageDir
RPMLIST=`ls *.rpm`
RPMCOUNT=`ls *.rpm | /usr/bin/wc -l`

for theRpm in $RPMLIST
do
    echo /bin/rpm --quiet --upgrade --nodeps --force $theRpm
done

Аналогичный шаблон для общих действий с без разницы файлы существуют в определенном каталоге.

Вся концепция не работает, если анаконда выскакивает из-за обратной кавычки в файле.

Кроме того, обратная кавычка является допустимым оператором bash, с которым, похоже, возникают проблемы с кикстартом.

- это обратные кавычки предполагаемый работать в кикстарте?

Изменить II: Добавлен $ (ls) в пример