如何检查文件是否比shell脚本中的目标文件更新


2

如何检查文件是否比目标文件更新?

在一个打算在Mac上运行的shell脚本中,我想做这样的事情:

#!/bin/bash
if [ $SourceFile dateisgreater $TargetFile ] then
    echo "SourceFile is newer that Targetfile"
fi

Answers:


3
#/bin/bash
if [ "$SourceFile" -nt "$TargetFile" ]; then
    echo "SourceFile is newer than Targetfile"
fi

-nt 意思是“比新”。

我在文件名周围添加了引号,因为如果你需要echo上的引号,tehn你还需要文件名的引号......


引用变量是因为值(在这种情况下文件的名称)具有空格。如果没有引用和空格,bash将无法正确解析if测试。
嫌疑人2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.