2010-02-24 2 views
3

Есть ли способ запустить javascript из .bat-файла или вставить javascript в .bat-файл.встроить Javascript в .bat файлы

Мне нужен код javascript для записи/чтения файла в локальной папке. Этот javascript должен быть способен выполнить его с помощью .bat.

Возможно ли ?.

Благодаря

SNA

ответ

1

на Windows, в пакетном файле, попробуйте

Cscript jsfile.js

-1

Это, sort of. Конечно, в Windows.

Это, вероятно, лучший способ сделать это. Для чего вам нужен JavaScript? Почему это должен быть JavaScript?

+1

«В Windows только» проблема, когда мы говорим о '.bat' файлах в любом случае? Я не думаю, что кто-то пытается это сделать в DOS. –

+0

@ Joachim указывает, что ограничения ОС никогда не ошибаются IMO - true, '.bat' специфичен для Windows-мира, но shell-скриптов вообще нет. –

-1

Короткий ответ: нет.

Javascript (при запуске из браузера) не может получить доступ к клиентским ресурсам (это по дизайну, чтобы избежать рисков безопасности).

Вы можете использовать Javascript за пределами, чтобы создавать скрипты, но вам следует предоставить более подробную информацию о том, что вы пытаетесь сделать (и о том, что Operative System вы ожидаете запустить).

Кроме того, уточните this page для получения более подробной информации.

0

Вы можете запустить сценарий JScript из пакетного файла с помощью сервера сценариев на основе командной строки CScript.exe.

Вам понадобится сценарий в отдельном файле, хотя вы передадите его как аргумент CScript.exe. Если вы хотите сохранить все в файле sinle, вы можете вставлять JScript-код в пакетный файл, выгружать его во временный файл, который вы передаете в CScript.exe, и впоследствии удалять временный файл сценария.

Там могут быть более элегантные решения (надеюсь)

-2

Вы можете запустить скрипт JScript из пакетного-файла с командной строки на основе сценариев хоста CScript.exe.

Вам понадобится сценарий в отдельном файле, хотя вы передадите его как аргумент CScript.exe. Если вы хотите сохранить все в одном файле, вы можете вставлять JScript-код в пакетный файл, выгружать его во временный файл, который вы передаете в CScript.exe, и впоследствии удалять временный файл сценария.

Там могут быть более элегантные решения (надеюсь)

11

Выполните следующие два шага, чтобы запустить Javascript в пакетный файл Windows, либо .bat или .cmd.

Первый шаг: добавьте эти строки в начало файла

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

Второй шаг: написать Javascript, чтобы использовать только объекты, которые доступны в Windows Scripting Host, т.е.используйте Wscript.Echo() для вывода вывода на стандартный вывод.

Вот полный пример готов к работе, набрав 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("  ------  ") 

Просто поместите это в calen.bat или calen.cmd и запустить его на любом достаточно недавно Windows. Не пытайтесь снова бороться с другим свернутым пакетным файлом.

1

Я знаю, что я немного опоздал на это, но если у вас есть node.js, установленный в вашей системе, вы можете использовать файл bat для вызова функции узла и выполнения вашего javascript-кода.

https://nodejs.org/en/

Node.js (при использовании модулей) позволяет сделать довольно много вещей, летучая мышь файлы могут сделать. Использование только Javascript вы можете редактировать/фраза локальные файлы, запускать исполняемые файлы т.д ... ЭСТ ..

Шаг за шагом руководство для настройки этой будет: 1) скачать и установить Node.js https://nodejs.org/en/download/ 2) Создайте файл javascript на своем компьютере с кодом js, который вы хотите запустить. В этом файле вы добавите код, позволяющий node.js обращаться к локальным файлам на вашем компьютере. Поместите следующий код в верхней части файла JavaScript:

//Load required modules 
fs = require('fs') 

//Function to read local files 
fs.readFile('path-to-file/this-is-my-file.txt', 'utf8', function (err,data) { 
    if (err) { 

    return console.log(err); 
    } 
    //data is the text file 
} 

3) создать файл летучей мыши, как это:

echo off 

node "path-to-javascript\index.js" 

И вы все настройки!

Смежные вопросы