【发布时间】:2015-08-14 21:16:12
【问题描述】:
我是 RPM 包增强/开发和安装后脚本的新手。
我想在执行安装后脚本时创建符号链接,但遇到了一个问题。
脚本执行对于符号链接创建工作正常,但对于升级部分,当我检查“$RPM_pckg_home/bin”中的符号链接时,尽管命令执行成功,但它们没有被创建。
这里是示例代码;
Original_bin_path=/a/b/c
RPM_pckg_home=/d/e/f
if [[ "$1" -eq 1 ]]; then # 1 for install
cd $RPM_pckg_home/bin
for cmd in `ls Original_bin_path` ; do
ln -s $Original_bin_path/${cmd} ${cmd}
done
elif [[ "$1" -eq 2 ]]; then # 2 for Upgrade
cd $RPM_pckg_home/bin
for cmd in `ls Original_bin_path` ; do
rm ${cmd}
ln -s $Original_bin_path/${cmd} ${cmd}
done
fi
您能否建议问题出在哪里。
【问题讨论】:
-
您在
for循环中的Original_bin_path之前缺少$。 -
抱歉打错了,但事实并非如此。
-
您可以随时检查您的脚本是否存在 shellcheck.net 中的错误
标签: bash shell symlink rpm post-install