shell脚本中出现意外的运算符错误

mwkjh3gx  于 2023-01-26  发布在  Shell
关注(0)|答案(4)|浏览(134)

这是我正在运行的shell代码:

#!bin/bash

while true
do
        req=$(curl http://localhost/devcalls/camerarequest.php)

        if [ "$req" == "1" ]
        then
                sudo bash /home/ckoy-admin/HAS_system/camera/cam.sh
        fi
done

这是我执行时得到的错误:

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100     1  100     1    0     0     56      0 --:--:-- --:--:-- --:--:--    58
CAM.sh: 7: [: 1: unexpected operator

请告诉我这里出了什么问题。

0yg35tkg

0yg35tkg1#

if [ "$req" = 1 ]
甚至更好
if [ "$req" -eq 1 ]
请参见man test中的语法和运算符。

piztneat

piztneat2#

比较整数

if [ "$req" -eq 1 ]

比较STRING

if [ "$req" = "string" ]
cczfrluj

cczfrluj3#

if [ "expr n%2 -eq 0" ]
if [ "expr n%2=0" ]

if [ 'expr n%2=0' ]
if [ 'expr n%2 -eq 0' ]
你可以使用上面提到的任何4种方法我已经尝试了所有其他的答案,但包括里面的每一件事“”给了我输出

zpgglvta

zpgglvta4#

使用bash run.sh而不是sh run.sh对我很有效。

相关问题