はじめに findを普通に使うと, 以下のようにディレクトリとともに出力されるが, ファイル名のみ抽出したい場合がある. $ find . -type f ./path1/to1/file1.pl ./path2/to2/file2.rb ./path3/to3/file3.py ./path4/to4/file4.php ./path5/to5/file5.js
はじめに findを普通に使うと, 以下のようにディレクトリとともに出力されるが, ファイル名のみ抽出したい場合がある. $ find . -type f ./path1/to1/file1.pl ./path2/to2/file2.rb ./path3/to3/file3.py ./path4/to4/file4.php ./path5/to5/file5.js
具体的な値に当てはめて考えてみると、timeで +n だと「 n+1 日より前」となるため24時間のずれがあり、minの1分のずれと比べて、直観的でなくわかりづらい。 mtime +2 更新日が3日より前 mmin +2 更新日が3分より前 24時間単位でなくするためには、nに小数を入れると実現できるが、余計わかりづらくなってしまうかもしれないので、minを使う方がいい。 mtime +0.5 更新日が36時間より前 古いファイルを処理するシェルを mtime +1 と書いて実行した場合、「1日と数時間は経っているファイルが処理されていないのはなぜ?」と無駄に考え込んでしまったので、1日を過ぎたファイルを対象にする場合は、mmin +1440と書くようにしている。 参考 http://www.sioazike.info/wordpress/?p=243 from A to Bのように期間を
問題 サーバー内の、最近いじられたファイルを探したいんですけど! どうしたらいいですか? 答え ガンブラー攻撃でファイルが更新されていないか気になるときにも使えます。 findコマンドはファイル名(正規表現可)、更新日、所有者、グループ、サイズなどで、ファイル、ディレクトリを検索ができる。 更新日が最近の10日以内のファイルを見つける。場所はカレントディレクトリ「.」以下から。詳細に(-ls) find . -mtime -10 -ls 更新日が最近の10日以上前のファイルを見つける(こう書くと古い方を見てしまう) find . -mtime +10 更新日がちょうど○日のファイルを見つける find . -mtime 10 更新日など詳細が見えなくてよいときは -print を指定するか、省略する。 おまけ1 ちなみに正規表現で検索はこう。パス全体がマッチするかどうかを見る。 パス全体が
tree コマンドは便利 Linux における tree コマンドは便利ですね。しかし標準コマンドではないため初めて操作するサーバや手軽に tree をインストール出来ない環境だとディレクトリ構造を奇麗にツリー上に表示することが出来ません。 その場合は find や sed を使って tree コマンドを代替しましょう。 find と sed で代替 pwd;find . | sort | sed '1d;s/^\.//;s/\/\([^/]*\)$/|--\1/;s/\/[^/|]*/| /g'
find -mtime でファイルを探すとき、 「3日前のファイル」をリストしようとして $ find . -mitme 3 と打ったら4日前の日付のファイルが出てきて、理由がわからず悩む とか、 「3日以上前のファイル」をリストしようとして $ find . -mitme +3 と打ってみたが、3日前の日付のファイルは1本も出てこなくて困る ということがよくある。何回使っても挙動が覚えられないので整理してみる。 -mtimeの考え方 次の 1,2,3 の指定でリストされるファイルには重なりがない。それぞれまったく別のファイルがリストされる。 find . -mtime -3 find . -mtime 3 find . -mtime +3 findは-n, n, +nで探索対象の時間をずらしているが、そのずらし方が私の直感に合わないので覚えにくい。 nを起点として、それより新しいものをリ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く