如何在linux上检查程序是否已成功安装?

时间:2017-09-14 19:10:23

标签: linux ubuntu bin

我有.bin文件,其中包含很多脚本,在Ubuntu上安装程序并在通过终端安装后

sudo chmod u+x myprogram.bin
./myprogram

我在/ usr / bin / myprogram中有。

我需要编写程序,检查某个程序是否已正确安装到系统中。我怎样才能做到这一点 ?

1 个答案:

答案 0 :(得分:0)

以下任何一项都应该有效

$ command -v foo >/dev/null 2>&1 && echo "installed" || echo "not installed"

$ type foo >/dev/null 2>&1 && echo "installed" || echo "not installed"

$ hash foo >/dev/null 2>&1 && echo "installed" || echo "not installed"

在您的情况下,您可以使用

$ command -v /usr/bin/myprogram >/dev/null 2>&1 && echo "installed" || echo "not installed" 

或者你可以创建如下的功能

#!/usr/bin/env bash

installed()
{
  command -v "$1" >/dev/null 2>&1
}

# and then
if installed ls; then
     echo 'ls exists'
else
     echo 'ls not installed'
fi

示例:

$ command -v ls >/dev/null 2>&1 && echo "installed" || echo "not installed" 
installed

$ command -v foo >/dev/null 2>&1 && echo "installed" || echo "not installed" 
not installed

如果您已经知道应用程序/程序的完整路径,则以下任何一项都可以正常工作

$ test -x /bin/ls && echo 'installed' || echo 'not installed'
installed

$ [ -x /bin/ls ] && echo 'installed' || echo 'not installed'
installed