No.3ベストアンサー
- 回答日時:
基本的なUNIXコマンドだけだと、ちょっと思い付かなかったので、直接更新時刻を得るプログラムをCで書いてみました。
#include <stdio.h>
#include <string.h>
#include <sys/param.h>
#include <sys/types.h>
#include <sys/stat.h>
char FPath[ MAXPATHLEN + 1 ];
struct stat FileInfo;
int main (int argc, const char * argv[]) {
while ( fgets( FPath, sizeof FPath, stdin ) ){
FPath[ sizeof FPath - 1 ] = '\n';
*strchr( FPath, '\n' ) = '\0';
if ( lstat( FPath, &FileInfo ) ){ continue; }
printf( "%10d %s\n", FileInfo.st_mtime, FPath );
}
}
これをビルドしたものを、a.outとすると、こんな感じで使えます:
[localhost:~/test] osamuy% find . -type f | a.out | sort -r
1044149908 ./a.out
1044149906 ./main.c
1044145197 ./test.pbproj/project.pbxproj
(以下略)
FreeBSDとMac OS Xで試してますが、標準的な関数しか使ってないので、Linuxでも使えると思います。
Perlが使えるならfind2perlが入っているはずですので、そちらを使えば、てっとりばやく実現できます。
[localhost:~/test] osamuy% find2perl . -type f -eval 'printf "%10d %s\n", (lstat(_))[9], $name' | perl | sort -r
1044149908 ./a.out
1044149906 ./main.c
1044145197 ./test.pbproj/project.pbxproj
っていうか、こっちを試してから、Cで書いてみたという。
find2perlについては、manpageをご覧下さい。
time_tが時刻書式じゃないとイヤな場合は、localtimeやstrftimeのmanpageをご覧下さい。
回答ありがとうございます。お礼が遅くなって申し訳ありません。
以下のようにしていまくいきました。
find2perl /home/dareka/public_html -type f -eval 'printf "%10d,%s\n", (lstat(_))[9], $name'|perl|sort -r|head -1
このあと秒数を変換して目的の通りになりました。ありがとうございました。
No.4
- 回答日時:
>ls -Rlt /home/dareka/public_html
一日たって思いついたのですが、ホームページコンテンツの
不正改竄チェック等を考えておられるのでしょうか?
うちのサーバではtripwireをcronで毎日走らせて、改竄チェック
をしています。
ホームページコンテンツのあるディレクトリを指定して、
日付が変わったファイル
サイズが変わったファイル
新しく追加されたファイル
削除されたファイル
などがあれば報告してくれます。
ご参考まで。
参考URL:http://www.zdnet.co.jp/enterprise/0209/11/n13.html
回答ありがとうごさいます。お礼が遅くなって申し訳ありません。
サーバを複数のユーザに利用していただいているのですが、目的はそのユーザがデータを更新しているかどうかをチェックするためです。知りたいのは変更があったことではなく、変更されなくなってからどれくらい経過したかです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【お題】絵本のタイトル
- ・【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Dirコマンドでフォルダ内ファイ...
-
ラズパイで『’test.service’をs...
-
ファイル名についている「-」と...
-
コマンドプロンプトを使ったフ...
-
windowsでMACの画像データを表...
-
excelのファイルの文字を検索し...
-
MS-DOSプロンプトでBE...
-
catalina.outへのログ吐き出し...
-
ftpコマンドで丸ごとダウン...
-
tarコマンドのリターン値
-
ごみ箱に入れるWindows コマン...
-
ファイル編集について
-
Cygwinのコマンドラインから.ba...
-
cpコマンド実行時に文字コード...
-
cpコマンドで強制的に上書きし...
-
lsコマンドで表示されるタイム...
-
DOSコマンドのFOR文で空白を含...
-
ファイル名一覧の印刷
-
コマンドプロンプト dir でのソ...
-
Microsoft Scandiscってなんで...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Dirコマンドでフォルダ内ファイ...
-
ファイル名についている「-」と...
-
ラズパイで『’test.service’をs...
-
テキストファイルから最終行の抽出
-
ファイル名一覧の印刷
-
DOS コマンドの~zfの意味を教え...
-
Linuxで標準出力したファイルの...
-
DOSコマンドのFOR文で空白を含...
-
数字を複数回繰り返す正規表現...
-
ファイル名の -(ハイフン)を _(...
-
batファイルの強制終了を回避し...
-
コマンドプロンプト dir でのソ...
-
特定の更新日付のファイルのみ...
-
oracleの文字コードとlinuxサー...
-
処理結果(標準出力と標準エラー...
-
バッチファイルでのzip形式フォ...
-
Windowsバッチファイルで、隠し...
-
lsでは一画面ずつ表示できませ...
-
「Vmmem」のメモリ使用量が高い...
-
作成日時でのファイル検索
おすすめ情報