• 締切済み

UNIXのディレクトリ再起検索に関して。

UNIXのディレクトリ再起検索に関して。 【内容】 ディレクトリの再起検索した内容をテキストに出力したいのですが、あるディレクトリの配下はテキストに出力したくないため、除外をしたいのですが、うまくいきません。 以下ディレクトリの構成は添付してあります。 たとえば、ls -laR > a.txtコマンドを実行して、1,2以外のディレクトリ(A,B,C)をa.txtに出力したいのです。 ご教示お願いします。

みんなの回答

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.5

A/1/D がある場合どうする、とか A/B/2 がある場合どうする、とか ありますが。 ・-pruneを使って、 1、または2というディレクトリだったらその下は走査しない さもなくば、-printで表示 find . -type d \( -name "1" -o -name "2" \) -prune -o print

  • trapezium
  • ベストアンサー率62% (276/442)
回答No.4

find A/ -type d ! -path '*/1*' -print0 | xargs -0 ls -l > a.txt とか A/1, A/1/2 だけ除外なら find A/ -type d ! \( -name '1' -or -name '2' \) -print0 | xargs -0 ls -l > a.txt でもいいか。

  • t_nojiri
  • ベストアンサー率28% (595/2071)
回答No.3

再帰じゃないかなー?と思ってみたり まあ、あんまりUNIXの用法っぽく無いけどtreeコマンド系が有るものも有ります。 http://x68000.q-e-d.net/~68user/unix/pickup?tree 確かに、findで事足りるのであんまり需要無いとは思うのですが一応。

  • SaKaKashi
  • ベストアンサー率24% (755/3136)
回答No.2

-Wは-wでした find . |grep -v -w 1|grep -v -w 2

  • SaKaKashi
  • ベストアンサー率24% (755/3136)
回答No.1

cd A find . |grep -v -W 1|grep -v -W 2 とか

関連するQ&A