我有成百上千个文件,它们的名称如下:
RG1-t.txt
RG1-n.txt
RG2-t.txt
RG2-n.txt
等等...
我想使用GNU Parallel在这些文件上运行脚本,但我很难获取文件的basename,例如RG1、RG2等等,以便我可以运行以下命令:
ls RG*.txt | parallel "command.sh {basename}-t.txt {basename}-n.txt > {basename}.out"
导致产生文件RG1.out、RG2.out等。 有任何想法吗?
{/}
似乎是basename
的等价物,而{//}
则是dirname
的等价物。 - Florian Castellane{}
=> 'foo/bar.baz',{.}=> 'foo/bar',
{/}=> 'bar.baz',
{//}=> 'foo',
{/.}` => 'bar',截至20161222并行。 - forresthopkinsaparallel --plus echo '{%.bar.gz}' ::: foo.ext.bar.gz
应该给我foo.ext
,但它给我{%.bar.gz} foo.ext.bar.gz
。 - Brian Wiley