gpt4 book ai didi

bash - 如何确定是否使用 bash 安装了二进制文件?

转载 作者:行者123 更新时间:2023-12-04 00:40:07 25 4
gpt4 key购买 nike

使用终端,确定名为 dcmdump 的二进制文件的最简单方法是什么?是否安装在用户的系统上?如果已安装,我需要知道它的位置(例如 /usr/local/bin),如果未安装,我希望终端回显 FALSE .

我知道很少的终端脚本,但输入:

command -v dcmdump

输出目录 dcmdump 安装在(如果已安装 - 这很好)但如果没有则不回显(我希望它回显字符串 FALSE )

最佳答案

你可以使用这个:

$ which dcmdump 2>/dev/null || echo FALSE

下面是它的工作原理:
  • 整个表达式是两个命令的 bool OR(写为 || )。 OR 的左侧是命令 which dcmdump 2>/dev/null ,右侧是 echo FALSE .
  • 由于懒惰评估(或短路),如果左侧评估为“真”(或“成功”),则不会评估右侧。否则,它会。
  • 命令 which NAME查找名为 NAME 的可执行文件在您当前的外壳中 $PATH .如果找到,则将其绝对路径打印到标准输出并以指示“成功”的状态退出,否则,它可能会或可能不会向标准错误输出打印错误消息并返回指示“失败”的状态。
  • 因为我们不想 which的错误信息但我们自己的,我们重定向 which的标准错误输出到黑洞 /dev/null2>/dev/null部分。
  • 命令 echo TEXT简单地输出 TEXT到标准输出。如果您需要 FALSE要打印到标准错误输出,您可以使用 echo FALSE >&2 重定向它.
  • 关于bash - 如何确定是否使用 bash 安装了二进制文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32801791/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com