我想创建一个脚本,如果hg incoming -v
包含特定文件,它将执行某些操作。
说if hg incoming -v | grep models.py > 0
而不是./manage.py resetdb
。像这样的东西。
如何根据hg incoming -v | grep manage.py
结果设置标记(在bash脚本中)?
答案 0 :(得分:1)
if hg incoming -v | grep -q 'models\.py'; then
./manage.py resetdb
fi
但是,这似乎很脆弱:当models.py存在于除文件之外的其他输出(例如描述)时,它匹配,并且在本地修改models.py时不起作用。您可以在上面设置一个变量来控制以后的操作,如果这是“设置标志”的意思。
答案 1 :(得分:1)
count=`hg incoming -v | grep -c 'models\.py'`
if test $count -gt 0; then
./manage.py resetdb
fi