我如何grep Bash脚本中的程序输出的数据值范围

Tsu Wei Quan

我正在执行此脚本来检查我的OctoPrint(3d打印机)是否正在冷却。

通过使用

#octocmd status 
temps:
    bed: actual=26.0, target=0.0, offset=0
    tool0: actual=54.9, target=55.0, offset=0
i will get a data like this.

我能够检查它是否正在打印,因为我已经在bash脚本中完成了此操作

/usr/local/bin/octocmd status | grep 'target=200.0, offset=0'
if [ $? == 0 ];  # if target 200; enter if
then
        echo "Printing in progress, Script will check back in 5 minutes"
        /usr/local/bin/octocmd status
        sleep 5m    

在冷却期间,我应该看到

tool0: actual=189.3(decreasing), target=0.0, offset=0

但是我一直在尝试使用我的ELSE功能来检查它是否正在冷却。可以说

actual= (**range from 40.0 to 180**), target=0.0, offset=0 

因此,我想谦虚地寻求帮助,以了解如何从Actual = XXX中检测任意范围的数据

这是我目前的代码:

    while [ 1 ]
do
/usr/local/bin/octocmd status | grep 'target=200.0, offset=0' &> /dev/null  # grab string $ remove error
if [ $? == 0 ];  # if target 200; enter if
then
        echo "Printing in progress, Script will check back in 5 minutes"
        /usr/local/bin/octocmd status
        sleep 5m                                # check every 5 minutes

elif  [ -z "/usr/local/bin/octocmd status |  /*CHECK IF PRINTER IS COOLING DOWN OR NOT, CHECK ACTUAL=30 ~ 180 */"' 2>&1 /dev/null ];
then
        if [ $? == 0 ];
        then
        #enter here if target is cooled with no print job
        /usr/local/bin/octocmd status

        fi

done
滕西拜

要完成anubhava的答案,这里是如何将其包括在bash测试中:

if [[ $(/usr/local/bin/octocmd status | awk -F 'actual=|[,(]'  '$2 >= 40 && $2 <= 180 {print 1}') ]]
  then 
    echo "OK"
  else 
    echo "Not OK"
fi

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何让我的 bash 脚本正确输出数据?

来自分类Dev

如何grep我的xml文件并保存输出?

来自分类Dev

如何使bash脚本知道在Linux中执行的CLI程序的输出?

来自分类Dev

如何使用shell脚本从输出中grep特定值?

来自分类Dev

我如何获得grep每条输出线的长度

来自分类Dev

需要帮助,可从应用程序脚本中的“范围列表中”获取数据验证条件,以便我可以循环浏览这些值

来自分类Dev

BASH 脚本 - 使用 GREP 从 JSON 输出中返回两个特定值

来自分类常见问题

如何递归grep多个文件夹中的文件?我无法传递递归猫的输出

来自分类Dev

如何递归grep多个文件夹中的文件?我无法传递递归猫的输出

来自分类Dev

我如何grep netstat -i的以下输出中给出的接口名称

来自分类Dev

Perl如何在我的子程序中利用块参数(就像grep一样)

来自分类Dev

grep输出仅在bash脚本中打印一行

来自分类Dev

在bash脚本中从grep输出扩展环境变量

来自分类Dev

grep输出仅在bash脚本中打印单行

来自分类Dev

如何从getopts在bash脚本中输出管道标准输出?

来自分类Dev

当网站永不结束时,我如何grep输出curl的输出

来自分类Dev

如何从脚本本身中抑制bash脚本的输出?

来自分类Dev

我如何将输出从tailf&grep重定向到文件

来自分类Dev

如何grep netcat输出

来自分类Dev

如何缩进grep的输出?

来自分类Dev

如何grep netcat输出

来自分类Dev

如何grep cURL的输出?

来自分类Dev

如何从git grep输出?

来自分类Dev

如何从bash运行vimscript,并在bash脚本中获取输出?

来自分类Dev

我如何grep一个文件以获取多个唯一值?

来自分类Dev

在我的情况下,如何grep以“ sg”开头的所有值

来自分类Dev

如何在bash脚本中为unicode grep

来自分类Dev

在脚本中测试grep输出

来自分类Dev

在脚本中测试grep输出

Related 相关文章

  1. 1

    如何让我的 bash 脚本正确输出数据?

  2. 2

    如何grep我的xml文件并保存输出?

  3. 3

    如何使bash脚本知道在Linux中执行的CLI程序的输出?

  4. 4

    如何使用shell脚本从输出中grep特定值?

  5. 5

    我如何获得grep每条输出线的长度

  6. 6

    需要帮助,可从应用程序脚本中的“范围列表中”获取数据验证条件,以便我可以循环浏览这些值

  7. 7

    BASH 脚本 - 使用 GREP 从 JSON 输出中返回两个特定值

  8. 8

    如何递归grep多个文件夹中的文件?我无法传递递归猫的输出

  9. 9

    如何递归grep多个文件夹中的文件?我无法传递递归猫的输出

  10. 10

    我如何grep netstat -i的以下输出中给出的接口名称

  11. 11

    Perl如何在我的子程序中利用块参数(就像grep一样)

  12. 12

    grep输出仅在bash脚本中打印一行

  13. 13

    在bash脚本中从grep输出扩展环境变量

  14. 14

    grep输出仅在bash脚本中打印单行

  15. 15

    如何从getopts在bash脚本中输出管道标准输出?

  16. 16

    当网站永不结束时,我如何grep输出curl的输出

  17. 17

    如何从脚本本身中抑制bash脚本的输出?

  18. 18

    我如何将输出从tailf&grep重定向到文件

  19. 19

    如何grep netcat输出

  20. 20

    如何缩进grep的输出?

  21. 21

    如何grep netcat输出

  22. 22

    如何grep cURL的输出?

  23. 23

    如何从git grep输出?

  24. 24

    如何从bash运行vimscript,并在bash脚本中获取输出?

  25. 25

    我如何grep一个文件以获取多个唯一值?

  26. 26

    在我的情况下,如何grep以“ sg”开头的所有值

  27. 27

    如何在bash脚本中为unicode grep

  28. 28

    在脚本中测试grep输出

  29. 29

    在脚本中测试grep输出

热门标签

归档