首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用前导零bash命令行读取文件

用前导零bash命令行读取文件
EN

Stack Overflow用户
提问于 2017-07-10 15:03:59
回答 2查看 32关注 0票数 1

例如,我有15个文件作为files:

,abc11.txt 02.txt,.,…,abc11.txt 09.txt,abc11.txt 10.txt,abc11.txt 11.txt.abc15.txt

我想使用bash从命令行读取这些文件并执行一些操作。

代码语言:javascript
复制
for i in {1..15}; do COMMAND abc$i.txt; done

上面的语句只读取10到15之间的文件,因为前9个文件的开头为0。如果在上面的命令中使用$之前的[0],那么它只读取前9个文件。我想看所有的文件。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-07-10 15:09:06

bash 4.0开始,在{0x..0y}中引入零被支持 (零填充支撑扩展)。有了它,你可以这样做:

代码语言:javascript
复制
for i in {01..15}; do COMMAND "abc$i.txt"; done
票数 3
EN

Stack Overflow用户

发布于 2017-07-10 15:08:47

您可以在进程替换中使用零填充格式的printf

代码语言:javascript
复制
while read -r f; do
   echo "processing $f"
done < <(printf "abc%02d.txt\n" {1..15})
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45015515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档