4

私はcp1つのファイルを作成しようとしています:index.phpすべてのサブディレクトリ、およびそれらのサブディレクトリのサブディレクトリなどに、ルートのすべての子ディレクトリがindex.php

私はこれから始めました:

for d in */; do cp index.php "$d"; done; 

これは、上位のサブディレクトリでのみ機能しました。私はそれ自体を次のように数回ネストしようとしました:

for d in */; do cp index.php "$d"; for e in */; do cp index.php "$e";for f in */; do cp index.php "$f"; done; done; done

しかし、それは何もしなかったようです

4

2 に答える 2

9

これを試して :

find . -type d -exec cp index.php {} \;

ノート

  • -type dすべてのディレクトリとサブディレクトリを検索
于 2013-03-11T19:04:27.210 に答える
1

sputnickの答えは素晴らしくて単純です。ちなみに、これはシェル関数でそれを行う1つの方法です。操作が複雑または条件付きの場合は、このようなものが必要になることがあります。

t=$PWD/index.php

recurse () {
  for i in */.; do
    if [ "./$i" != './*/.' ]; then
      (cd "./$i" && cp "$t" . && recurse)
    fi
  done
}

recurse
于 2013-03-11T19:23:48.173 に答える