Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 如何使用:';dpkg-s pv | grep状态';_Bash_Grep_Dpkg - Fatal编程技术网

Bash 如何使用:';dpkg-s pv | grep状态';

Bash 如何使用:';dpkg-s pv | grep状态';,bash,grep,dpkg,Bash,Grep,Dpkg,编码virgin需要帮助-一旦安装了package pv,该代码总是执行其他而不是然后。为什么? # First check if pv package is installed, if not, install it first PACKAGESTATUS=`dpkg -s pv | grep Status`; if [[ $PACKAGESTATUS == S* ]] then echo "Package 'pv' is installed." else

编码virgin需要帮助-一旦安装了package pv,该代码总是执行
其他
而不是
然后
。为什么?

# First check if pv package is installed, if not, install it first
PACKAGESTATUS=`dpkg -s pv | grep Status`;

if [[ $PACKAGESTATUS == S* ]]
   then
      echo "Package 'pv' is installed."
   else
      echo "Package 'pv' is NOT installed."
      echo "Installing package 'pv'. Please wait..."
      apt-get -y install pv
fi
注意:它是备份脚本的一部分,备份运行Raspbian wheezy的raspberry pi
Raspbian/2013-02-09
,pv版本为
1.2.0
,作者不可用


谢谢。

不要捕获
dpkg | grep
管道的输出,只需检查其退出状态:

if dpkg -s pv | grep -q Status; then
   then
      echo "Package 'pv' is installed."
   else
      echo "Package 'pv' is NOT installed."
      echo "Installing package 'pv'. Please wait..."
      apt-get -y install pv
fi

grep
-q
选项用于抑制任何匹配行的输出,因为您不需要查看它们。

由于双“then”,chepners应答中有一个小的语法错误

这个版本我运气更好

if `dpkg -s pv | grep -q Status;`
   then
      echo "Package 'pv' is installed."
   else
      echo "Package 'pv' is NOT installed."
      echo "Installing package 'pv'. Please wait..."
      apt-get -y install pv
fi

什么是
dpkg-s pv | grep Status
print?Package:pv Status:install ok installed blah&so onOK so
如果[[$PACKAGESTATUS==s*]]
将为真,只要
$PACKAGESTATUS
s
开头,请看是,我怀疑它也不起作用。Thx的链接-解决方案运作良好