我想知道哪种方法是正确的(更好,更快,更合适)。
我正在编写一个脚本,它将在xfce菜单中为二进制列表创建一个条目,只有在系统上安装了这个条目(基于Linux arch)。
我应该以这种方式检查二进制文件
Check if a program exists from a Bash script
或者我应该检查包含二进制文件的目录是否在/ usr / share /中可用?
F a
由于
答案 0 :(得分:1)
这是我的两分钱:
根据您的需求定制的链接页面上的测试将是一个更好的"测试。例如:
command -v foo >/dev/null 2>&1 || your failure code here
优于仅检查目录存在(if [ -d "$DIRECTORY" ]; then
),因为目录可能存在,但命令可能因某些其他原因而失败,从而使XFCE菜单上的链接无效。
因此,在我看来,只检查目录是否存在,因为另一个测试可以保证命令可以执行。