我正在尝试让我的脚本检查x32或x64操作系统,并根据结果从脚本包中选择文件。
例如: 如果操作系统是x32位,我希望脚本将file-x32复制到安装目录 如果操作系统是x64位,我希望脚本将file-x64复制到安装目录
我遇到了打印结果的代码:
if [ `getconf LONG_BIT` = "64" ]
then
echo "I'm 64-bit"
else
echo "I'm 32-bit"
fi
像这样修改这个脚本来完成这项工作会非常简单:
if [ `getconf LONG_BIT` = "64" ]
then
mv /tmp/autoscript/file-x64 /var/destination
else
mv /tmp/autoscript/file-x32 /var/destination
fi
如果可能的话,我也想向用户回应: 检测到x32位操作系统 要么 检测到x64位操作系统
答案 0 :(得分:2)
if-else块可以包含多个语句。因此,如果你想为每个分支建立一个回声,你可以这样做。
if [ `getconf LONG_BIT` = "64" ]
then
echo "I'm 64-bit"
mv /tmp/autoscript/file-x64 /var/destination
else
echo "I'm 32-bit"
mv /tmp/autoscript/file-x32 /var/destination
fi
如果您想在其他地方使用架构信息,可以将其存储在变量中并执行以下操作:
arch=$(getconf LONG_BIT)
echo "I'm $arch-bit"
if [ "$arch" = "64" ]
then
mv /tmp/autoscript/file-x64 /var/destination
else
mv /tmp/autoscript/file-x32 /var/destination
fi
更好的是,有了变量,你可以这样做:
arch=$(getconf LONG_BIT)
echo "I'm $arch-bit"
mv /tmp/autoscript/file-x$arch /var/destination