UNIXシェルスクリプト第9章 Part6

2つのファイルの日付を比べる関数 IsNewer.sh

※更新時刻に関して説明。

ファイルのタイムスタンプには3通りある。

アクセスした時刻、ステータスの変更時刻、修正時刻。

 

if [ ! -f $1 -o ! -f $2 ] ; then

-o はAOR条件演算子で、どちらかが真であれば真。

ちなみに -a がAND条件演算子

 

if [ -n "`find $1 -newer $2 -print`" ] ; then

find $1 -newer $2 -print はfind ファイル 検索条件 検索結果に対する処理。

-newer $2 で$2より修正日時が新しいものを検索する。

-print でそのファイル名を標準出力に出力する。

-n string は文字列が空でなければ真。