我有一个包含一些内容的规范文件。还有一个脚本:
%postun
if [ '$1' == 0 ]; then
do some things
fi
我希望在删除包后执行 %postun 部分中的脚本。但在 $1 变量中,我收到一个路径(../../source/)而不是数字。
我如何接收号码而不是路径?
答案1
首先 - 单引号意味着不扩展变量。使用双引号:
if [ "$1" == 0 ]; then
我猜你的脚本看起来像:
%postun
if [ '$1' == 0 ]; then
./some-script.sh foo
fi
请注意,脚本中的 $1 是foo
,而不是 scriptlet 中的 $1 。