find

find

execする時のパターン

最初から

find . -name '*.sh' -exec chmod 755 {} \;

としないで、まずはコマンドechoする。

find . -name '*.sh' -exec echo chmod 755 {} \;

これで、コマンドの内容をプレビューしてから、パイプでshに流し込む。

find . -name '*.sh' -exec echo chmod 600 {} \; | sh
  • execは複数指定できる
  • {}は複数指定できる

CVSディレクトリだけを削除

$ find . -name CVS -type d -exec echo rm -rf {} \; | sh

--help

$ find --version
GNU find version 4.1.7

$ find --help
Usage: find [path...] [expression]
default path is the current directory; default expression is -print
expression may consist of:
operators (decreasing precedence; -and is implicit where no others are given):
      ( EXPR ) ! EXPR -not EXPR EXPR1 -a EXPR2 EXPR1 -and EXPR2

      EXPR1 -o EXPR2 EXPR1 -or EXPR2 EXPR1 , EXPR2
options (always true): -daystart -depth -follow --help
      -maxdepth LEVELS -mindepth LEVELS -mount -noleaf --version -xdev
tests (N can be +N or -N or N): -amin N -anewer FILE -atime N -cmin N

      -cnewer FILE -ctime N -empty -false -fstype TYPE -gid N -group NAME
      -ilname PATTERN -iname PATTERN -inum N -ipath PATTERN -iregex PATTERN
      -links N -lname PATTERN -mmin N -mtime N -name PATTERN -newer FILE

      -nouser -nogroup -path PATTERN -perm [+-]MODE -regex PATTERN
      -size N[bckw] -true -type [bcdpfls] -uid N -used N -user NAME
      -xtype [bcdpfls]

actions: -exec COMMAND ; -fprint FILE -fprint0 FILE -fprintf FILE FORMAT
      -ok COMMAND ; -print -print0 -printf FORMAT -prune -ls


Report bugs to <bug-findutils@gnu.org>.