当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 10 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 我的第一个shell,if语句
帖子发表于 : 2010-01-10 22:13 
头像

注册: 2010-01-04 16:48
帖子: 94
送出感谢: 0 次
接收感谢: 0 次
#! /bin/bash
qqz2="123"
echo "input:"
read qqz
if
test $qqz -eq $qqz2
then
echo "hello"
fi


有点问题:为什么 代码写成
代码:
if test $qqz -eq $qqz2 then

代码:
if [test $qqz -eq $qqz2] then

就运行不了……
在if语句里,什么情况下 写成 if [条件] then 呢?
:em20


_________________
人生没有if...else


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 我的第一个shell,if语句
帖子发表于 : 2010-01-10 23:05 
头像

注册: 2006-08-24 21:25
帖子: 256
送出感谢: 0 次
接收感谢: 0 次
好像什么情况下都不能写成
代码:
if test $qqz -eq $qqz2 then


因为需要换行,如果一定要写在一行上加分号;
代码:
if test $qqz -eq $qqz2 ;then


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 我的第一个shell,if语句
帖子发表于 : 2010-01-20 9:32 
头像

注册: 2006-08-25 10:37
帖子: 736
送出感谢: 0 次
接收感谢: 0 次
路过,学习。


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 我的第一个shell,if语句
帖子发表于 : 2010-01-20 15:56 
头像

注册: 2010-01-09 15:34
帖子: 27
送出感谢: 0 次
接收感谢: 0 次
#! / bin / sh
# Pairs of variable assignments:
a = "hello world"

# Print the variable a value:
echo "A is:" $ a :em11


_________________
丑要饭的玩IT。


页首
 用户资料  
 
5 楼 
 文章标题 : Re: 我的第一个shell,if语句
帖子发表于 : 2010-01-20 22:25 

注册: 2010-01-20 21:46
帖子: 3
送出感谢: 0 次
接收感谢: 0 次
[ ]
test
是两种条件测试的用法,不能混合用。


页首
 用户资料  
 
6 楼 
 文章标题 : Re: 我的第一个shell,if语句
帖子发表于 : 2010-01-21 11:36 
头像

注册: 2007-12-20 15:08
帖子: 231
地址: harbin
送出感谢: 0 次
接收感谢: 0 次
[] 其实就是代表了条件语句中的test了、呵呵。好好在看看书吧,建议你可以上鸟哥的网站去学习学习

linux.vbird.org


_________________
Keep trying...never say never. blog: H。U。C
代码:
        .--.
       |o_o |
       |:_/ |           < Hello Girl >
      //   \ \             ------------
     (|     | )
    /'\_   _/`\
    \___)=(___/


页首
 用户资料  
 
7 楼 
 文章标题 : Re: 我的第一个shell,if语句
帖子发表于 : 2010-01-23 22:24 

注册: 2008-10-31 22:12
帖子: 6546
系统: 践兔
送出感谢: 18
接收感谢: 25
代码:
>> help if
if: if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else COMMANDS; ] fi
    Execute commands based on conditional.

    The `if COMMANDS' list is executed.  If its exit status is zero, then the
    `then COMMANDS' list is executed.  Otherwise, each `elif COMMANDS' list is
    executed in turn, and if its exit status is zero, the corresponding
    `then COMMANDS' list is executed and the if command completes.  Otherwise,
    the `else COMMANDS' list is executed, if present.  The exit status of the
    entire construct is the exit status of the last command executed, or zero
    if no condition tested true.

    Exit Status:
    Returns the status of the last command executed.

if a ; then b ; [ elif c ; then d ; ] ... [ else e ; ] fi
如果if或者elif后面的命令执行成功(return 0)就执行then后面的东东,否则继续往下看。

判断某命令是否执行成功是if ...而不是if [ ... ]


_________________
代码:
] ls -ld //


页首
 用户资料  
 
8 楼 
 文章标题 : Re: 我的第一个shell,if语句
帖子发表于 : 2010-01-23 23:05 
头像

注册: 2009-09-20 19:30
帖子: 765
地址: GIS
系统: ubuntu12.04
送出感谢: 0 次
接收感谢: 0 次
打酱油的学习。。。 :em06


页首
 用户资料  
 
9 楼 
 文章标题 : Re: 我的第一个shell,if语句
帖子发表于 : 2010-01-29 10:54 

注册: 2009-06-01 22:31
帖子: 18
送出感谢: 0 次
接收感谢: 0 次
test 和 [ 是相同的,不能同时写在一起。

if 和 then 要么不再同一行,要么 就用 ;隔开。貌似是语法问题。


页首
 用户资料  
 
10 楼 
 文章标题 : Re: 我的第一个shell,if语句
帖子发表于 : 2010-02-07 18:00 

注册: 2010-02-07 17:48
帖子: 2
送出感谢: 0 次
接收感谢: 0 次
if [ $qqz -eq $qqz2 ];then
echo "qqz = qqz2"
fi


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 10 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 1 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译