问段sh代码的意思

leo_ss_pku
问段sh代码的意思

[table=95%][tr][td][font=FixedSys][color=#000000][color=#FF9900]#!/bin/sh
[/color]

    ARCH[color=#0000CC]=[/color][color=#FF00FF]"$(uname -i)"[/color]
    [color=#0000FF]if[/color] [color=#0000CC][[/color] [color=#0000FF]X[/color][color=#FF00FF]"${ARCH}"[/color] [color=#0000CC]=[/color][color=#0000CC]=[/color] [color=#0000FF]X[/color][color=#FF00FF]"i386"[/color] [color=#0000CC]-[/color]o [color=#0000FF]X[/color][color=#FF00FF]"${ARCH}"[/color] [color=#0000CC]=[/color][color=#0000CC]=[/color] [color=#0000FF]X[/color][color=#FF00FF]"x86_64"[/color] [color=#0000CC]][/color][color=#0000CC];[/color] then
        [color=#0000CC]:[/color]
    [color=#0000FF]else[/color]
        ECHO_INFO [color=#FF00FF]"blablabla."[/color]
    fi[/color][/font][/td][/tr][/table]

shell新手,if中间啥意思?

waker
如果ARCH变量的值是i386或x86_64

dgww
嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿

feixiang2966
回复 #1 leo_ss_pku 的帖子

里面判断是不是i386或者x86_64的系统

rabinwang
这样不更好理解吗,为什么要搞成那样子呢?

......
if [ $(ARCH) ==i386 ]  || [ $(ARCH) == x86_64 ]; then
......

liaosnet
[quote]原帖由 [i]rabinwang[/i] 于 2008-6-19 18:59 发表 [url=http://bbs.chinaunix.net/redirect.php?goto=findpost&pid=8622561&ptid=1164719][img]http://bbs.chinaunix.net/images/common/back.gif[/img][/url]
这样不更好理解吗,为什么要搞成那样子呢?

......
if [ $(ARCH) ==i386 ]  || [ $(ARCH) == x86_64 ]; then
...... [/quote]

错误代码..:mrgreen: :mrgreen:

$() 与${}是有区别滴...

walkerxk
[quote]原帖由 [i]rabinwang[/i] 于 2008-6-19 18:59 发表 [url=http://bbs.chinaunix.net/redirect.php?goto=findpost&pid=8622561&ptid=1164719][img]http://bbs.chinaunix.net/images/common/back.gif[/img][/url]
这样不更好理解吗,为什么要搞成那样子呢?

......
if [ $(ARCH) ==i386 ]  || [ $(ARCH) == x86_64 ]; then
...... [/quote]
根据目测,上面打字比较少
[img]http://bbs.chinaunix.net/images/smilies/em17.gif[/img]

liaosnet
回复 #7 walkerxk 的帖子

:mrgreen: :mrgreen: :mrgreen:

ruifox
if [ "${ARCH}" == "i386" -o "${ARCH} == "x86_64" ]; then

X似乎没有必要,不过""最好还是保留

fortuneteller
其中的x是什么意思 有什么作用马

liaosnet
回复 #10 fortuneteller 的帖子

没有什么意义..就是让少出错的意思..

X"${ARCH}" == X"i386" 比如 ${ARCH} 为空值的话,不会出现 == i386 这样的等式..而是 X == Xi386

walkerxk
"${ARCH}" == "i386"也一样的吧"" == "i386"