LoginSignup
0
0

find結果で得られたフォルダからfindを実行する(再帰的なfind?)

Last updated at Posted at 2024-04-08

「xargs」っていうのがフィルターでは使えるようだが、使い方のコツが分らんかった…。
findの結果をawkに渡してfindを生成して、shで実行する。

cd /hogehoge/fugafuga
find 10.* -maxdepth 3 -a -name "abc" | awk '{print "find "$1" -maxdepth 2  -name '"'"xyz"'"' -print";}' | sh

10.10.10.20/project/abc/0000/xyz👈コレが対象のディレクトリ
10.10.10.20/project/public_html/abc/xyz

こんな感じだけど、急ぎで進めたかったので上記で進めた。xargsがどのように実行されるのかパイプ越しに受け取ったモノをコマンドの中に入れたい時などはまた次回やるときに調べる事にする。

{}👈コレを使う事で入れ込む場所を設定できるみたいだけど、うまく動かない
-IXXXとXXXを組み合わせたら動いた。
👇助けになったページ
https://qiita.com/P-man_Brown/items/c3f2634b7b5e08306c8f

find app/mod logs/httpd/ -name '*20240407*' -print  | xargs -p -IXXX ls -ld XXX .

👇

ls -ld abc1 abc2 abc3 .

ではなく

ls -ld abc1 .
ls -ld abc2 .
ls -ld abc3 .

こんな感じに受け取ったのをセットして一回実行ではなく、一行に付き一回ずつ実行していく感じ

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0