求助,不知道我的script错在什么地方

sh/bash/dash/ksh/zsh等Shell脚本
回复
zhangsan5421
帖子: 80
注册时间: 2007-04-22 16:04

求助,不知道我的script错在什么地方

#1

帖子 zhangsan5421 » 2008-09-15 9:22

#!/bin/bash
if ["$SHELL" = "/bin/bash"]; then
echo "your login shell is bash"
else
echo "your login shell is NOT bash but $SHELL"

#但是出现的结果不是正确的结果,我用的Linux ubunutu 2.6.24-19 server,而且$SHELL环境变量是/bin/bash,
#结果却出现了错误的结果:[/bin/bash:not found
#your login shell is NOT bash but /bin/bash


#不知道怎么回事,请大家帮我看看,谢谢
头像
solcomo
帖子: 2838
注册时间: 2007-04-25 13:12

#2

帖子 solcomo » 2008-09-15 9:28

=两边不要空格
少了一个fi
♜♞♝♛♚♝♞♜
♟♟♟♟♟♟♟♟
♙♙♙♙♙♙♙♙
♖♘♗♕♔♗♘♖

☠☯⚔⚓☣☦☃☕
☹☻☪☭☬⚖⚛⚜
ℜℳℬ™ ℋℯℓ℘ ℳℭ
sƂɐʍ рǀɹoʍ əɥʇ oS
头像
cnkilior
论坛版主
帖子: 4984
注册时间: 2007-08-05 17:40

#3

帖子 cnkilior » 2008-09-15 10:06

#!/bin/bash

--->#!/bin/sh

if ["$SHELL" = "/bin/bash"]; then

---->if [ "$SHELL" = "/bin/bash" ];then


echo "your login shell is bash"
else
echo "your login shell is NOT bash but $SHELL"

+++>fi
头像
cnkilior
论坛版主
帖子: 4984
注册时间: 2007-08-05 17:40

#4

帖子 cnkilior » 2008-09-15 10:13

另:這個腳本無效!

#!/bin/sh

規定解析這個腳本的shell為sh。多數系統都把它連接到bash。也就是這個腳本的命令是在bash中運行的,盡管你身在csh/zsh。

另:csh的變量:shell /bin/tcsh
zhangsan5421
帖子: 80
注册时间: 2007-04-22 16:04

#5

帖子 zhangsan5421 » 2008-09-15 17:52

谢谢,我发现问题的所在了,就是括号前后都需要空格,我没有空格所以出现错误的答案了。
回复