在 rpm 规范文件中,我需要识别用户使用过rpm -ivh
或rpm -Uvh
. 一般来说,$1
值将在%pre
. 但在我的新 rpm 中,我们正在修改安装位置。在这种情况下,when is check$1
显示 和 的值-ivh
相同-Uvh
。
%pre
if [ "$1" -ge 2 ]; then
legacy_exist=true
if legacy_exist; then
rm -rf *.txt
else
mkdir xxx
fi
pre
%pre
if [ "$1" -ge 2 ]; then
legacy_exist=false
if legacy_exist; then
rpm -e xxx
else
mkdir xxx
fi
pre
我希望仅在使用 -Uvh 的情况下删除文件,但在我的情况下,当我在两种情况下都设置为 true 时更改了 rpm 路径并且$1
值仅显示 2。如果 rpm 没有更改安装路径,则代码可以正常工作。