次の形式の名前を持つ何千ものファイルがあります。
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]
と一致します。0
2
4
6
8
get sequence_2_[02468]?01.hmf
答え2
以下を使用してファイルのリストを生成できます。
printf %s\\n sequence_[0-9]*.jpg | sort -t_ -k2n | sed -n '1~100p'