ディレクトリがありますㅏそして第二。それぞれに異なるディレクトリが含まれていますプロジェクト.json中。ただプロジェクト.jsonファイルはディレクトリに保持されるため、ディレクトリをコピーして貼り付けることはできません。
ㅏ:
./path/Item A/item.json
./path/Item B/item.json
...
./path/Item Z/item.json
第二:
./new/Item A/item.json
./new/Item B/item.json
...
./new/Item Z/item.json
./path/
どのitem.jsonファイルを適切なフォルダにコピーするのですか./new
?
私の解決策:
ディレクトリのインポート
ls -l ./path | grep "^d" | cut -d' ' -f 16
その後、結果を次のように使用できます。
for i in `ls -l ./path | grep "^d" | cut -d' ' -f 16`; echo "Dir: $i"; done
だから私はcp
彼らと一緒にできるように
for i in `ls -l ./path | grep "^d" | cut -d' ' -f 16`; cp "$i/item.json" "../new/$i/item.json" ; done
この解決策は大丈夫ですが、よりエレガントな方法があると確信しています。
ベストアンサー1
次の行が役に立ちます。
$ find ./path/ -type f -exec bash -c 'cp $0 ${0/path/new}' {} \;
ここでは、コマンドはディレクトリ内のすべてのテキストファイルをfind
検索します。./path/
ファイルが見つかったら、/new/
単に文字列をtoに置き換える小さなbashスクリプトを呼び出して、path
ファイルをターゲットディレクトリにコピーしますnew
。