10

このようなディレクトリがあります

fool@brat:/mydir/ucsc_mm8> tar -xvf *.tar 
1/chr1.fa.masked
1/chr1_random.fa.masked
2/chr2.fa.masked
3/chr3.fa.masked
4/chr4.fa.masked
5/chr5.fa.masked
5/chr5_random.fa.masked
19/chr19.fa.masked
Un/chrUn_random.fa.masked

私がやりたいことは、サブディレクトリ内のすべての「*.masked」ファイル/1/Un. Linux/Unix でそれを行うコンパクトな方法はありますか?

4

3 に答える 3

16

特定の式に一致するすべてのファイルを移動する一般的な方法は次のとおりです。

mv 1/*.masked targetDir

targetDir の場所..

ディレクトリ1,2,3から移動したい場合は、次のようにすることができます

mv */*.masked targetDir

または、番号付きディレクトリから具体的に移動したい場合は、次のようなものを実行できます

mv [0-9][0-9]/*.masked targetDir
于 2009-03-10T01:32:54.100 に答える
6
mv */*.masked .
于 2009-03-10T01:30:50.470 に答える
5

多くの UNIX シェルは、パスのディレクトリ部分でも * 演算子をサポートしています。以下は、少なくとも bash と zsh で機能します。

ls */*.masked

これにより、1 つ下のディレクトリの .masked で終わるすべてのファイルが返されます。

それらを移動するには:

mv */*.masked destination
于 2009-03-10T01:30:32.840 に答える