如何让ubuntu支持这样的写法?
- 13378333
- 帖子: 322
- 注册时间: 2012-05-31 12:00
如何让ubuntu支持这样的写法?
#!/bin/bash
# 输出九九乘法表
i=1
while [ $i -le 9 ]
do
j=1
while [ $j -le $i ]
do
echo -en $"${j}x${i}=$[i*j]\t"
let j++
done
echo
let i++
done
在RHEL里 就可以运行,为啥在ubuntu这里就出错了?
# 输出九九乘法表
i=1
while [ $i -le 9 ]
do
j=1
while [ $j -le $i ]
do
echo -en $"${j}x${i}=$[i*j]\t"
let j++
done
echo
let i++
done
在RHEL里 就可以运行,为啥在ubuntu这里就出错了?
-
- 帖子: 4
- 注册时间: 2012-08-10 12:01
Re: 如何让ubuntu支持这样的写法?
sudo dpkg-reconfigure bash ,然后选择否,ubuntu的默认sh是dash。可能是这个原因吧,你的脚本在我机子上没问题
- eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
- lilydjwg
- 论坛版主
- 帖子: 4258
- 注册时间: 2009-04-11 23:46
- 系统: Arch Linux
- 联系:
Re: 如何让ubuntu支持这样的写法?
人家执行的是 sh ./xxx 吧。eexpress 写了:2楼。脚本里面都指定的bash嘛。
出错提示些什么?写出来。
- 枫叶饭团
- 帖子: 14683
- 注册时间: 2010-06-16 1:05
- 系统: Mac OS X
- 来自: Tencent
- 联系:
Re: 如何让ubuntu支持这样的写法?
dash这坑爹的,果然还是zsh好。。
- 13378333
- 帖子: 322
- 注册时间: 2012-05-31 12:00
Re: 如何让ubuntu支持这样的写法?
-en $1x1=$[i*j]eexpress 写了:2楼。脚本里面都指定的bash嘛。
出错提示些什么?写出来。
1.sh: 10: 1.sh: let: not found
-en $1x1=$[i*j]
1.sh: 10: 1.sh: let: not found
-en $1x1=$[i*j]
1.sh: 10: 1.sh: let: not found
-en $1x1=$[i*j]
1.sh: 10: 1.sh: let: not found
-en $1x1=$[i*j]
1.sh: 10: 1.sh: let: not found
-en $1x1=$[i*j]
1.sh: 10: 1.sh: let: not found
-en $1x1=$[i*j]
1.sh: 10: 1.sh: let: not found
-en $1x1=$[i*j]
1.sh: 10: 1.sh: let: not found
-en $1x1=$[i*j]
1.sh: 10: 1.sh: let: not found
-en $1x1=$[i*j]
1.sh: 10: 1.sh: let: not found
-en $1x1=$[i*j]
无限循环
- eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
- lilydjwg
- 论坛版主
- 帖子: 4258
- 注册时间: 2009-04-11 23:46
- 系统: Arch Linux
- 联系:
Re: 如何让ubuntu支持这样的写法?
在你楼上eexpress 写了:谁蛋疼去sh ./xxx

-
- 帖子: 4
- 注册时间: 2012-08-10 12:01
Re: 如何让ubuntu支持这样的写法?
呵呵,楼上各位小弟刚学linux,让各位见笑了。不过,小弟淡疼的去sh ./xxx真没问题
代码: 全选
sh ./test.sh
1x1=1
1x2=2 2x2=4
1x3=3 2x3=6 3x3=9
1x4=4 2x4=8 3x4=12 4x4=16
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25
1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36
1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49
1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64
1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81
- 13378333
- 帖子: 322
- 注册时间: 2012-05-31 12:00
Re: 如何让ubuntu支持这样的写法?
蛋疼?为啥sh xxx就不行了?和./ .这两种执行有什么区别 ?lilydjwg 写了:在你楼上eexpress 写了:谁蛋疼去sh ./xxx
- 枫叶饭团
- 帖子: 14683
- 注册时间: 2010-06-16 1:05
- 系统: Mac OS X
- 来自: Tencent
- 联系:
Re: 如何让ubuntu支持这样的写法?
默默的路过,不看man的问题直接无视掉
- lilydjwg
- 论坛版主
- 帖子: 4258
- 注册时间: 2009-04-11 23:46
- 系统: Arch Linux
- 联系:
Re: 如何让ubuntu支持这样的写法?
因为 dash 不行。 ./ 使用的是第一行指定的 bash,而 sh 不一定是 bash。Ubuntu 默认是 dash,功能少得可怜。13378333 写了:蛋疼?为啥sh xxx就不行了?和./ .这两种执行有什么区别 ?lilydjwg 写了:在你楼上eexpress 写了:谁蛋疼去sh ./xxx
-
- 帖子: 4
- 注册时间: 2012-08-10 12:01
Re: 如何让ubuntu支持这样的写法?
你难道没看见我在2楼里的命令已经将sh从dash改为bash了吗lilydjwg 写了:因为 dash 不行。 ./ 使用的是第一行指定的 bash,而 sh 不一定是 bash。Ubuntu 默认是 dash,功能少得可怜。13378333 写了:蛋疼?为啥sh xxx就不行了?和./ .这两种执行有什么区别 ?lilydjwg 写了:在你楼上eexpress 写了:谁蛋疼去sh ./xxx
- lilydjwg
- 论坛版主
- 帖子: 4258
- 注册时间: 2009-04-11 23:46
- 系统: Arch Linux
- 联系:
Re: 如何让ubuntu支持这样的写法?
见到了,怎么了?您是 Ubuntu 核心开发者?eliving 写了:你难道没看见我在2楼里的命令已经将sh从dash改为bash了吗lilydjwg 写了:因为 dash 不行。 ./ 使用的是第一行指定的 bash,而 sh 不一定是 bash。Ubuntu 默认是 dash,功能少得可怜。13378333 写了: 蛋疼?为啥sh xxx就不行了?和./ .这两种执行有什么区别 ?
-
- 帖子: 4
- 注册时间: 2012-08-10 12:01
Re: 如何让ubuntu支持这样的写法?
不好意思被你说中了lilydjwg 写了:见到了,怎么了?您是 Ubuntu 核心开发者?eliving 写了:你难道没看见我在2楼里的命令已经将sh从dash改为bash了吗lilydjwg 写了:因为 dash 不行。 ./ 使用的是第一行指定的 bash,而 sh 不一定是 bash。Ubuntu 默认是 dash,功能少得可怜。13378333 写了: 蛋疼?为啥sh xxx就不行了?和./ .这两种执行有什么区别 ?