ツリーの各ディレクトリのファイルを作成するには?

ツリーの各ディレクトリのファイルを作成するには?

次のツリー構造の場合:

    .
└── dir1
    └── dir2
        └── dir3

各ディレクトリごとにファイル(空にすることができます)を作成する簡単な方法は何ですか?結果ツリーは次のとおりです。

.
├── dir1
│   ├── dir2
│   │   ├── dir3
│   │   │   └── README
│   │   └── README
│   └── README
└── README

ベストアンサー1

そしてzsh

touch -- README **/*(N/e[REPLY+=/README])

それは結合する再帰ワイルドカード**/*)とグローバル予選、ここにいる:

  • Nullglob: 一致するものがない場合、エラーは発生しません。
  • /: ファイル形式の制限目次
  • e[code]:各ファイルについてe評価され、ここにファイルパスに追加されます(評価されたコードに保存されます)。code/README$REPLY

またはあなたは使用することができます匿名関数/READMEディレクトリリストが渡され、渡された引数の各ディレクトリに追加されますtouch

() {touch -- $^@/README} . **/*(N/)

(そしてrcスタイル配列の拡張@構文を使用する匿名関数パラメータの場合$^array)。

これらのすべてでは、Dotglob glob修飾子を追加してREADME隠しディレクトリに追加できます。

おすすめ記事