bash - 如何使用 {1..$VAR} 使 printf 正常工作
问题描述
当我这样做时,我得到了我的期望:
$ printf "https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=%d\n" {1..10}
https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=1
https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=2
https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=3
https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=4
https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=5
https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=6
https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=7
https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=8
https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=9
https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=10
但是当我这样做时,它似乎将其视为 1 arg:
cbongiorno at wa-christianb-mbp in ~/dev/mystuff/bashful on master [!?]
$ count=10
cbongiorno at wa-christianb-mbp in ~/dev/mystuff/bashful on master [!?]
$ printf "https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=%d\n" {1..${count}}
bash: printf: {1..10}: invalid number
https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=0
cbongiorno at wa-christianb-mbp in ~/dev/mystuff/bashful on master [!?]
$ printf "https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=%d\n" "{1..${count}}"
bash: printf: {1..10}: invalid number
https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=0
cbongiorno at wa-christianb-mbp in ~/dev/mystuff/bashful on master [!?]
$ printf "https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=%d\n" {1.."${count}"}
bash: printf: {1..10}: invalid number
https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=0
如何让 bash 像对数字进行硬编码一样扩展这个 arg?
解决方案
你可以用这种方式重写你的行:
printf "https://api.bitbucket.org/2.0/repositories/twengg?pagelen=0&page=%d\n" $(seq 1 $count)
命令seq
通常用于生成连续(基于规则)数字
推荐阅读
- batch-file - 带有空格和特殊字符的批处理文件 CURL 字符串
- c# - C#反序列化深层链接对象
- sql - 在 group by 之后将多行合并为一行
- google-cloud-dlp - 如何让 Google DLP V2 API 返回与 V2Beta 具有相同准确度的数据?
- javascript - style.pointerEvents 不起作用
- android - ListView 不显示最后一项
- ios - 在本地通知中包含 APS 有效负载数据到 watchOS
- python - 加速有限差分模型
- ruby-on-rails - Rails Heroku 应用程序无法加载(错误代码 =H10) Rails 教程
- spring-boot - Spring Boot 手动处理 JWT