次のフォルダツリー構造があります。
arndell
\_databases
\_daily
\_weekly
claremont
\_databases
\_daily
\_weekly
monte
\_databases
\_daily
\_weekly
私は毎週と毎日のディレクトリ内のすべてのファイルに集中します。シェルコマンドまたはコマンドを使用してこれを達成する方法はありますか?
私はls -R */weekly/
成功せずにトップレベルのフォルダで試しました。
答え1
まあ、最上位ディレクトリ(arndell
、、claremont
およびの親ディレクトリmonte
)に次のように入力できます。
ls */*/{weekly,daily}
拡張:
ls */*/weekly */*/daily
weekly
これにより、ディレクトリのすべての内容が表示されますdaily
。
答え2
Bashがある場合は、次のものを使用できます。
shopt -s globstar
for f in **/{daily,weekly}/*; do
whatever $f
done
答え3
find . '(' -path '*/weekly/*' -o -path '*/daily/*' ')' -type f