だから今日私はPHPファイルの1つが古いことを発見し、phpthumb
サーバーのディレクトリ全体を上書きする必要がありました。
複数のWebサイトが不明な複数の場所でこのフォルダを使用していますが、1つのソースパスにこれらのフォルダをすべて含めるにはどうすればよいですか? (例:/home/test/testuser/phpthumb/
到着/home/*/*/phpthumb/
)
答え1
これは働きます:
echo /home/*/*/phpthumb | xargs -t -n 1 cp -r /home/test/testuser/phpthumb/*
あなたは一緒に働く必要がありますxargs
。残念ながら、cp
複数のターゲットにコピーすることは不可能です。cp
複数のソースを処理できます。
説明する:
echo /home/*/*/phpthumb
: すべてのphpthumb
ディレクトリのリストxargs -t -n 1
:xargsはcp
各行ごとに別々に呼び出す必要があります。cp -r /home/test/testuser/phpthumb/*
このコマンドをxargs
呼び出す必要があります。ターゲットディレクトリは最後に追加されますxargs
。
答え2
この試み:
$ find /home -name "phpthumb" -type d -not -path "*test/testuser/phpthumb" \
-exec cp /home/test/testuser/phpthumb/* {} \;
find
phpthumb
コマンドは以下を探します/home
。
-type d
フォルダの選択-not -path
入らないようにするtest/testuser/phpthumb
cp
各フォルダに対してコマンドを実行します。test/testuser/phpthumb
サブフォルダがあるツリー-R
の場合cp
。