我正在寻找一个多平台的解决方案,可以让我检查scp命令是否可用。
问题是scp没有--version命令行,在不带参数的情况下调用时,它将返回退出代码1 (错误)。
更新:如果不清楚的话,我说的多平台指的是一种可以在Windows、OS X和Linux上运行的解决方案,而不需要我安装任何东西。
发布于 2011-06-02 22:49:48
使用命令which scp。它可以让你知道命令是否可用,以及它的路径。如果scp不可用,则不会返回任何内容。
发布于 2011-06-02 23:06:51
#!/bin/sh
scp_path=`which scp || echo NOT_FOUND`
if test $scp_path != "NOT_FOUND"; then
if test -x ${scp_path}; then
echo "$scp_path is usable"
exit 0
fi
fi
echo "No usable scp found"sh没有内置其中,因此我们依赖于系统提供的哪些命令。我不完全确定是否需要-x检查-在我的系统上,它实际上是验证找到的文件是否可由用户执行,但这可能不是可移植的。在极少数情况下,系统没有which命令,您可以在此处编写which函数。
https://stackoverflow.com/questions/6216108
复制相似问题