我正在尝试创建一个小脚本来检查程序是否已安装.我正在尝试使用tmux,......
`tmux --help` | grep "tmux: command not found" &> /dev/null
if [ $? == 1 ]; then
echo "tmux is not installed"
exit
fi
Run Code Online (Sandbox Code Playgroud)
安装完tmux后,我得到:
usage: tmux [-2lquvV] [-c shell-command] [-f file] [-L socket-name]
[-S socket-path] [command [flags]]
tmux is not installed
Run Code Online (Sandbox Code Playgroud)
如果没有安装程序,请使用字符串"tmux:command not found".这可以解释为什么我grep输出tmux --help命令.是否是检查tmux是否安装的正确方法?
脚本alwais回声"未安装tmux".即使我安装了tmux.它出什么问题了?
您可以使用command,type并且hash内置函数测试给定的命令是否是在当前shell会话使用.
这不会告诉您它是否在当前不在当前的某个位置可用PATH.
你应该避免which为此目的而使用(即使这是许多人会得到的默认建议),因为它不是一个标准化的工具(不是完全的),而且它是一个外部工具,与上面所有相比都是建立的 -进入壳(因此检查更昂贵).
| 归档时间: |
|
| 查看次数: |
8974 次 |
| 最近记录: |