比较上次修改日期

时间:2017-10-13 13:57:23

标签: windows bash batch-file

我正在尝试将linux bash脚本翻译成windows。我有两个问题:

  • 如何去除文件名的扩展部分?
  • 如何比较两个文件的上次修改日期?

原始的bash脚本是:

#!/bin/bash

file=$1
name=${file%.*}

if [ "$1.scala" -ot "$file" ]; then
    java -jar ./potigol/potigol.jar -d $file > $name.scala
fi
./scala-2.11.8/bin/scala -save -cp potigol/potigol.jar $name.scala 2> /dev/null

1 个答案:

答案 0 :(得分:0)

谢谢@squashman。我在CALLFOR命令的帮助下找到了答案:

@echo off
SET scala_file=%~n1.scala
SET t1=%~t1
FOR %%A IN (%scala_file%) DO (SET t2=%%~tA)
IF "%t1%" GTR "%t2%" (
    java -jar potigol\potigol.jar -d %1 > %scala_file%
)
scala-2.11.8\bin\scala -save -cp potigol\potigol.jar %scala_file% 2> NUL