ユーザ用ツール

サイト用ツール


02_freebsd:80_unixコマンド:find

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

次のリビジョン
前のリビジョン
02_freebsd:80_unixコマンド:find [2013/10/10 00:22] – 作成 matsui02_freebsd:80_unixコマンド:find [2016/02/22 07:44] (現在) – [条件] matsui
行 1: 行 1:
 +====== find ======
  
 +===== 機能 =====
 +
 +条件を指定することによって、ファイルやディレクトリを検索する。演算子で結ぶことによって複数の判別式を使用できる。 
 +
 +===== 構文 =====
 +
 +find [検索するディレクトリ] (option) 
 +
 +===== オプション =====
 +
 +==== 条件 ====
 +|-name [file name]|指定した文字列を検索 |
 +|-user [user name]|指定したユーザー名のファイルを検索 |
 +|-atime (+/-)n|最後にアクセスしたのがn日前のファイルを検索 (+n:n日以上、-n:n日以下) |
 +|-mtime (+/-)n|最後にデータが修正されたのがn日前のファイルを検索(+n:n日以上、-n:n日以下) |
 +|-mmin (+/-)n|最後にデータが修正されたのがn分前のファイルを検索(+n:n分以上、-n:n分以下) |
 +|-size n[c/k/b]|nのサイズのファイルを検索(c:バイト、k:キロバイト、b:ブロック-1ブロック=512バイト) |
 +|-type [type]|typeに指定したものだけ検索|
 +
 +=== -type の[type] ===
 +|b|ブロックデバイス|
 +|c|キャラクタデバイス|
 +|d|ディレクトリ|
 +|f|ファイル|
 +|l|シンボリックリンク|
 +|p|名前付きパイプ|
 +|s|ソケット (UNIX ドメインソケット)|
 +|D|Door (Solaris のみ) |
 +
 +
 +
 +==== 処理 ====
 +
 +|-print|検索結果の標準出力(省略可) |
 +|-fprint [filename]|検索結果を指定したファイルに書き出す |
 +|-exec   [command] {} \;|検索結果をコマンドに引き渡して実行 |
 +
 +===== コマンド例 =====
 +■./以下から30日以上前に更新されたpng形式のファイルを検索する
 +<code console>
 + $ find ./ -name "*.png" -atime +30 
 +</code>
 +
 +■./以下でユーザーmatuiのファイルを検索し削除する。
 +<code console>
 + $ find ./ -user matsui -exec rm -rf {} \;
 +</code>
 +
 +■./以下でファイルサイズが10M以上のものを表示。
 +<code console>
 + $ find ./ -size +10000k -exec ls -ahl {} \;
 + -rwxr--r--  1 matsui  matsui    15M  7 22 14:24 ./TEST/EvtRpt92JP.zip
 + -rwxr--r--  1 matsui  matsui   3.3G  7  3 10:09 ./TEST/Fedora-9-i386-DVD.iso
 + -rwxr--r--  1 matsui  matsui    15M  5 30  2008 ./TEST/FreePrimo32Setup_JP.exe
 +</code>
 +
 +■ /var/log以下で1M以上のファイルを検索
 +<code console>
 + $ find /var/log/ -size +1000k -exec ls -ahl {} \;
 +</code>
 +
 +{{tag>Unixコマンド ファイル操作}}