bash - 可以在花括号中扩展 Bash 变量吗?
问题描述
在 BASH 中,是否可以在大括号扩展中扩展变量?
例如,如果想要获得打印序列 1 到 10,他们可以这样做:
echo {1..10}
假设我有一个变量而不是 10,rangeEnd
并且想使用它。类似于以下内容:
rangeEnd=10
echo {1..$rangeEnd}
然而{1..10}
,这与1 2 3 4 5 6 7 8 9 10
. 有没有办法1 2 3 4 5 6 7 8 9 10
使用花括号展开获得正确的序列 ()?(我已经知道我可以使用echo $(seq 0 $(rangeEnd))
,但我想看看是否确实可以使用花括号扩展)
解决方案
你想这样使用eval
:
eval "echo {1..${rangeEnd}}"
推荐阅读
- python - 改进多类逻辑回归
- ideavim - Ideavim - 我如何添加有向图
- reactjs -
不能作为孩子出现 - types - 如何将隐式类型转换实现为静态类型语言
- ansible - 复制模块“内容”仅适用于变量,“src”仅适用于文件,如何让它同时适用于两者?
- edi - 使用 Smooks 解析 Edifact ORDERS 91-1
- spring-boot - 错误:'org.springframework.beans.factory.UnsatisfiedDependencyException'
- javascript - Gatsby/React 项目不会重新识别 ssr 脚本标签 cloudinary 变量也尝试使用 Helmet
- android - 我想将项目动态添加到 MainActivity 但是当我触发意图时,只添加了一个项目(名称)
- ssl - 通过 deadpool-postgres 使用 TLS 时,Actix 服务器无法连接到 Postgres