bash:如何合并包含某个位置的数字的文件

时间:2012-07-09 09:50:18

标签: regex bash cat

我想合并所有文件,在某个位置有一个或两个数字。基本上我想匹配1-22的数字。

我用bash写道:

cat chr[0-9][0-9]{0,}_from6_new_mono.txt >all_autosomes_from6_new_mono.txt

我收到此错误:

cat: chr[0-9][0-9]0_from6_new_mono.txt: No such file or directory

但是文件名看起来像这样:

chr22_from6_new_mono.txt

chr1_from6_new_mono.txt

有人可以建议我哪里可能有问题吗?感谢:)

2 个答案:

答案 0 :(得分:2)

使用bash,您可以使用花括号扩展来表示数字范围:

cat chr{1..22}_from_6_new_mono.txt >merged

答案 1 :(得分:1)

你确定,你正确使用大括号扩展吗?

查看http://www.gnu.org/software/bash/manual/bashref.html#Brace-Expansion了解更多信息