命令ls -al dog RCS/dog,v
返回
-rw-r--r-- 1 simon simon 0 Apr 13 19:25 dog
-r--r--r-- 1 simon simon 191 Apr 13 19:28 RCS/dog,v
表示它RCS/dog,v
比dog
, 還新
if [[ RCS/$dog* -nt dog ]] ; then echo not older than dog ; else echo older than dog ; fi
返回older than dog
。由於對於不以 ,v 結尾的文件,此比較執行正確,因此對於以 .v 結尾的文件似乎有問題,v
。有人可以建議如何解決這個問題嗎?
答案1
在您的範例中,您指的是多變的你的表達期望的地方文字:
if [[ RCS/$dog* -nt dog ]] ; then echo not older than dog ; else echo older than dog ; fi
那是,
這是一個變數:
$dog
,如果未設置,你會得到類似的東西RCS/*
(或其他東西,如果$dog
恰好被設定為cat
)。這是一個字面意思:
dog
, 和RCS/dog*
會匹配RCS/dog,v