echo {1..$1}写法在脚本中失效问题
[11:33:04 root@centos7 data]#cat test1.sh
#!/bin/bash
echo {1..$1}
echo {1..9}
[11:30:55 root@centos7 data]#./test1.sh 9
{1..9}
1 2 3 4 5 6 7 8 9
接收变量后为什么无法正确显示呢。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
参见 man bash
这个展开发生在替换
$1
之前,此时它并不符合这一展开的形式。于是没有展开。你这个可以用 seq 命令实现:
shell的解释顺序了解下先。
加点东西:
`#!/bin/bash
eval echo {1..$1}
echo {1..9}`
有必要学习一下基础的shell,共勉