何百ものファイルに深くネストされたフォルダ構造があります。各ファイルがある親フォルダの名前に基づいてファイルの名前を変更し、名前が変更されたファイルを定義済みの宛先フォルダに移動するdata.log
スクリプトが必要です。data.log
元のdata.log
文書は元の場所に残る必要があります。
例:
元のファイルがそのまま残るようにファイル名を変更してから移動する必要が/opt/slm/data/system/amd-823723/data.log
あります。amd-823723
/opt/slm/output/
data.log
ベストアンサー1
#!/bin/bash
OUTDIR=/opt/slm/output/
find /opt/slm/data -name data.log |
while read FILE; do
OUTFILE="$(basename "$(dirname "$FILE")")"
cp -p "$FILE" "$OUTDIR$OUTFILE"
done