embed Javascript in .bat files

前端 未结 8 1930
旧巷少年郎
旧巷少年郎 2020-12-29 17:06

Is ther any way to execute javascript from a .bat file or embed the javascript in .bat file.

I need a javascript code to write/read to a file in a local folder.This

8条回答
  •  北荒
    北荒 (楼主)
    2020-12-29 17:31

    Follow these two steps to run Javascript in a Windows batch file, either .BAT or .CMD.

    First step: add these lines to the beginning of your file

    @set @junk=1 /*
    @echo off
    cscript //nologo //E:jscript %0 %*
    goto :eof
    */
    

    Second step: write your Javascript to only use objects that are available in Windows Scripting Host, i.e. use Wscript.Echo() to print output on the standard output.

    Here is a complete example ready to run by typing calen 2011 02

    @set @junk=1 /*
    @echo off
    cscript //nologo //E:jscript %0 %*
    goto :eof
    */
    x = WScript.Arguments
    Yr = x(0) ; Mo = x(1)
    
    YS = "JanFebMarAprMayJunJulAugSepOctNovDec"
    MN = Mo<1 || Mo>12 ? Mo : YS.substr(3*Mo-3, 3) // Month Name
    WScript.echo(" ", Yr, "         ", MN)
    WScript.echo(" Mo Tu We Th Fr Sa Su")
    WD = new Date(Yr, Mo-1, 1).getDay() ;
    if (WD==0) WD = 7 // Week Day Number of 1st
    LD = new Date(Yr, Mo, 0).getDate() // Last Day of month
    Wk = "" ; for (D=1 ; D < WD ; D++) Wk += "   "
    
    for (D=1 ; D<=LD ; D++) {
      Wk = Wk + " " + (D<10 ? "0"+D : D) ; WD++
      if ((WD==8) || (D==LD)) { WScript.echo(Wk) ; WD = WD-7 ; Wk = "" }
      }
    
    WScript.echo("        ------       ")
    

    Just put this in calen.bat or calen.cmd and run it on any reasonably recent Windows. Never struggle with another convoluted batch file again.

提交回复
热议问题