Linux Bash Shell - 文件遍历特定范围?

Linux Bash Shell - 文件遍历特定范围?

我的文件夹中有一堆文件:

电子表格700.xls 电子表格800.xls 电子表格850.xls 电子表格1005.xls 电子表格2400.xls

如何使用文件通配符来选择数字以 700 或更高但小于 1000 结尾的文件并将它们放入新文件夹中?

我试过了:

cp 电子表格*.xls,但通配符会选择全部。提前致谢。

答案1

cp 电子表格{7,8,9}[0-9][0-9].xls 文件夹

这意味着以 7 或 8 或 9 开头,然后加上两个数字,因此是 7xx、8xx、9xx

答案2

你也可以这样做:

cp spreadsheet{700..999}.xls folder

这更简单,并且还能让您更精确地开始和结束范围(仅当您想获得 7xx、8xx 和 9xx 的相同数字集时,接受的答案才有效)。

这被称为括号扩展:
https://www.gnu.org/software/bash/manual/html_node/Brace-Expansion.html

相关内容