特定の場所に他の文字を組み合わせたもの

特定の場所に他の文字を組み合わせたもの

Unixでは、6つの特定の場所にこれらの文字のすべての可能な組み合わせを作成しようとしました。

  • 位置1 - AまたはBまたはC
  • 位置2 - AまたはC
  • 場所3 - Cのみ
  • 位置4 - AまたはD
  • 位置5 - BまたはC
  • 位置6 - CまたはA

たとえば、組み合わせはAACABC、BACABC、...です。

UNIXツールを使用してこれを行う簡単な方法はありますか?

ベストアンサー1

要件はサポート拡張に対応します。

{A,B,C}{A,C}C{A,D}{B,C}{C,A}

これは48個の文字列に展開されます(48 = 3 * 2 * 1 * 2 * 2 * 2)。

$ printf '%s\n' {A,B,C}{A,C}C{A,D}{B,C}{C,A}
AACABC
AACABA
AACACC
AACACA
AACDBC
AACDBA
AACDCC
AACDCA
ACCABC
ACCABA
ACCACC
ACCACA
ACCDBC
ACCDBA
ACCDCC
ACCDCA
BACABC
BACABA
BACACC
BACACA
BACDBC
BACDBA
BACDCC
BACDCA
BCCABC
BCCABA
BCCACC
BCCACA
BCCDBC
BCCDBA
BCCDCC
BCCDCA
CACABC
CACABA
CACACC
CACACA
CACDBC
CACDBA
CACDCC
CACDCA
CCCABC
CCCABA
CCCACC
CCCACA
CCCDBC
CCCDBA
CCCDCC
CCCDCA

おすすめ記事