オフセットを使用して共通のサフィックスとプレフィックスを使用して複数のファイルを転送する方法は?

オフセットを使用して共通のサフィックスとプレフィックスを使用して複数のファイルを転送する方法は?

次の形式の名前を持つ何千ものファイルがあります。

sequence_1_0001.hmf  
sequence_1_0002.hmf  
sequence_1_0003.hmf
...  

sequence_1_0001.jpg  
sequence_1_0002.jpg
sequence_1_0003.jpg
...  

sequence_2_0001.hmf  
sequence_2_0002.hmf  
sequence_2_0003.hmf
...  

など..

私はsftpを使用して、それぞれサフィックスとプレフィックス「sequence_1」と「.hmf」を持つファイルのみを送信します。ただし、この形式に一致するすべてのファイルを転送したくありません。代わりに、100個のファイルごとに転送したいと思います。それは:

sequence_2_0001.hmf  
sequence_2_0101.hmf  
sequence_2_0201.hmf
...  

これを行う方法はありますか?

答え1

あなたの例はあなたの説明と一致しません。ワイルドカードを使用してsequence_2_0001.hmf、、、、...リストに従ってすべてsequence_2_0101.hmfの文字を一致させることができます。sequence_2_0201.hmf?

get sequence_2_??01.hmf

たとえば、文字セットを使用して20個のファイルごとに一致させることができます。数字、またはいずれか[02468]と一致します。02468

get sequence_2_[02468]?01.hmf

答え2

以下を使用してファイルのリストを生成できます。

printf %s\\n sequence_[0-9]*.jpg | sort -t_ -k2n | sed -n '1~100p'

関連情報