![可能なすべての文字と数値の組み合わせを含むフォルダを作成する[閉じる]](https://linux33.com/image/144124/%E5%8F%AF%E8%83%BD%E3%81%AA%E3%81%99%E3%81%B9%E3%81%A6%E3%81%AE%E6%96%87%E5%AD%97%E3%81%A8%E6%95%B0%E5%80%A4%E3%81%AE%E7%B5%84%E3%81%BF%E5%90%88%E3%82%8F%E3%81%9B%E3%82%92%E5%90%AB%E3%82%80%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B%5B%E9%96%89%E3%81%98%E3%82%8B%5D.png)
「example.txt、example.Txt、example.TxT...すべての可能な組み合わせ」などのフォルダを作成したいと思います。
答え1
cshスタイル中括弧拡張をサポートするシェルの場合:
mkdir example.{t,T}{x,X}{t,T}
を使用すると、zsh
次のように短縮できます。
mkdir example.{tT}{xX}{tT}
そのbraceccl
オプションを有効にする場合(他の中かっこの使用と競合するため、グローバルに有効にしないことをお勧めします)set -o braceccl
。
欲しいなら文字と数字のすべての可能な組み合わせ、(Unicodeの他のスクリプトにある数千の異なる文字と数字の代わりに)ASCII文字と数字に制限する場合、またはbash
以下zsh
を使用してくださいksh93
。
mkdir example.{{a..z},{A..Z},{0..9}}{{a..z},{A..Z},{0..9}}{{a..z},{A..Z},{0..9}}
zsh -o braceccl
次のように短縮できます。
mkdir example.{a-zA-Z0-9}{a-zA-Z0-9}{a-zA-Z0-9}
ただし、これは238328((26 + 26 + 10)3execve()
)ディレクトリであるため、パラメータと環境サイズの制限に達する可能性があります。組み込み関数を使用するか(実行して)、次の手順を実行してmkdir
このzsh
問題を解決できますzmodload zsh/files
。
printf '%s\n' example.{{a..z},{A..Z},{0..9}}{{a..z},{A..Z},{0..9}}{{a..z},{A..Z},{0..9}} |
xargs -0 mkdir