LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 868|回复: 5

新手问一下if的一个问题

[复制链接]
发表于 2009-3-7 23:23:34 | 显示全部楼层 |阅读模式
各位好,俺今天刚学shell脚本,看到if语句,就试着写了一个超简单的脚本,然后运行,竟然出错,请各位帮忙看看,谢谢
#!/bin/bash
int=1

if[1 = 1]
then
        echo $int
fi
            

出错信息:
./expr.sh: line 4: if[1 = 1]: command not found
./expr.sh: line 5: syntax error near unexpected token `then'
./expr.sh: line 5: `then'
发表于 2009-3-8 02:13:33 | 显示全部楼层
空格 空格 还是空格
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-3-8 12:21:33 | 显示全部楼层
请问楼上指的是1=1之间的空格吗?
我修改过了,现在是这样的
#!/bin/bash
int=1

if[1=1]
then
        echo $int
fi
但还是报错:
./expr.sh: line 4: if[1=1]: command not found
./expr.sh: line 5: syntax error near unexpected token `then'
./expr.sh: line 5: `then'
回复 支持 反对

使用道具 举报

发表于 2009-3-8 14:25:48 | 显示全部楼层
'[' 要空格, '[' 是 命令 不是普通符號
要是對比數字用 -eq, -ne, gl...etc
加上引號是好習慣

  1. if [ 1 -eq '1' ];then
  2.     echo "$int"
  3. fi
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-3-8 17:12:13 | 显示全部楼层
原来是这样啊,我一直没注意到"["是一个命令,谢谢茶兄的指点
回复 支持 反对

使用道具 举报

发表于 2009-3-9 12:19:42 | 显示全部楼层
空格的确需要注意~鉴定完毕
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表