シェルで階層ごと特定のファイルをコピー
/usr/local/ aaa/ ccc.log ddd.txt bbb/ ccc.log eee.txt
からccc.logだけを抜き出したい!つまり、こんな感じにしたい。
~/logs/ aaa/ ccc.log bbb/ ccc.log
そんなとき用の自分なりの解。忘れないようにメモ。
mkdir ~/logs cd /usr/local for d in `ls -p | grep /`; do mkdir ~/logs/$d cp $dccc.log ~/logs/$d done
"ls -p | grep /"でディレクトリだけ抽出できるので、あとは毎ディレクトリごとに作成とコピーを繰り返す。もっとシンプルなやり方ないかなぁ。