假设我有一堆这样命名的文件:
file01.txt file02.txt file03.txt ... file20.txt我想对这些文件的范围执行一个命令。
我知道如果想要'rm‘从'file05.txt’到'file09.txt‘,我可以:
rm file0[5-9].txt但是,我如何'rm‘范围从file08.txt到file13.txt?我试过这段代码
rm file[08-13].txt但不起作用。我可以运行这个命令:
rm file0[89].txt file1[0-3].txt但我想知道,如果可能的话,我是否可以再用一个精炼的“rm”参数来完成这个任务。
发布于 2016-08-07 08:06:44
您需要使用bash的支撑扩展:
rm file{08..13}.txt这将将文件file08移至file13,如果缺少任何文件,将显示错误消息。
设定范围以满足您的需要。
全局运算符[]的问题是,它将其中的每个字符/数字作为单个令牌来处理,因此只支持使用个位数的范围声明。
如果坚持使用[],可以使用这种非常难看的模式将file08与file13相匹配:
rm file0[8-9].txt file1[0-3].txthttps://askubuntu.com/questions/809146
复制相似问题