【发布时间】:2015-03-09 19:44:18
【问题描述】:
原谅我,这可能是一个简单的操作,但我来自面向对象的编程语言,这在 unix/bash/terminal 中不是很直观。
假设我想执行一个文件列表的命令,file1,file2,file3 所以命令会读取
cmd -i file1,file2,file3
现在,假设我有 1000 个这样的文件。我想通过所有文件运行它。然而。如果我只是输入
cmd -i file{1..1000}
我收到一个错误。这是因为file{1..1000} 返回的列表看起来像
file1 file2 file3 file4....
我需要它返回 文件1,文件2,文件3,文件4,....
【问题讨论】:
-
重写命令以期望文件名作为单独的参数,因此显而易见。命令行上以逗号分隔的列表绝对是“不自然的”,因为很难做到正确(不必要的困难,尤其是当您只需要剖析程序内部的名称时)。
-
我同意。如果我写了命令,我会这样做。不幸的是,它是为一组特定的生物信息学分析开发的独立命令包。