LinuxSir.cn,穿越时空的Linuxsir!

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

我想让一个变量从字符C变到D,一直变到H,按字母顺序增加,该怎么做?

[复制链接]
发表于 2005-8-6 23:14:41 | 显示全部楼层 |阅读模式
我想让一个变量从字符C变到D,一直变到H,按字母顺序增加,该怎么做? :help
发表于 2005-8-6 23:21:08 | 显示全部楼层
for str in C D E F G H
do
echo $str
done
回复 支持 反对

使用道具 举报

发表于 2005-8-7 02:49:42 | 显示全部楼层
换个思路~~
先看看这个
hua@hua:~$ EE=101
hua@hua:~$ echo -e "\\$EE"
A
hua@hua:~$ EE=$(($EE+1))
hua@hua:~$ echo $EE
102
hua@hua:~$ echo -e "\\$EE"
B
hua@hua:~$






BTW:
genv 兄 , 你的第一个 $str  应该改为 str
回复 支持 反对

使用道具 举报

发表于 2005-8-7 07:11:22 | 显示全部楼层
谢谢,细节问题.哈哈,马上改!
回复 支持 反对

使用道具 举报

发表于 2005-8-7 14:41:18 | 显示全部楼层

  1. perl -e 'print join(" ",C..H,"\n")'
复制代码

回复 支持 反对

使用道具 举报

发表于 2005-8-7 15:52:58 | 显示全部楼层
借鉴jhuangjiahua兄的想法
for word in $( seq 103 108  )
do
    echo -e "\\$word"
done
测试了一下,发现A-G 能正常显示,但H成了8 我弄了半天没弄明白,还望指点
回复 支持 反对

使用道具 举报

发表于 2005-8-7 16:13:23 | 显示全部楼层
Post by yaop
借鉴jhuangjiahua兄的想法
for word in $( seq 103 108  )
do
    echo -e "\\$word"
done
测试了一下,发现A-G 能正常显示,但H成了8 我弄了半天没弄明白,还望指点


H的八进制是110
嗯。。。八进制的数字有8吗?
回复 支持 反对

使用道具 举报

发表于 2005-8-7 16:32:31 | 显示全部楼层
[yaop@ ~/practise]set ee=108
[yaop@ ~/practises]echo -e "\\$ee"
H
why
回复 支持 反对

使用道具 举报

发表于 2005-8-7 17:08:10 | 显示全部楼层
Post by yaop
[yaop@ ~/practise]set ee=108
[yaop@ ~/practises]echo -e "\\$ee"
H
why

  1. $ myh=108
  2. $ echo -e "\\$myh"                                                 8
  3. $ myh=110
  4. $ echo -e "\\$myh"
  5. H
  6. $
复制代码


你确信你的测试没有问题的吗?
如果是这样,把你的LINUX版本,还有echo命令版本,及哪种shell和版本列出来看看吧

PS:我在我的笔记本和服务器上测试之后就像上面你看到的一样。这两台机的发行版都不一样的。
回复 支持 反对

使用道具 举报

发表于 2005-8-7 18:02:58 | 显示全部楼层
[yaop@ ~$]mu=108
[yaop@ ~$]echo -e "\\$mu"
8
[yaop@ ~$]mu=110
[yaop@ ~$]echo -e "\\$mu"
H
[yaop@ ~$]set mu=108
[yaop@ ~$]echo -e "\\$mu"
H
[yaop@ ~$]set mu=110
[yaop@ ~$]echo -e "\\$mu"
H
不会是 set 的原因把?怎么回事?

GNU bash, version 3.00.16(1)-release (i386-redhat-linux-gnu)
回复 支持 反对

使用道具 举报

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

本版积分规则

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