Вставлять Javascript в .bat файлы
Является ли любой способ выполнить javascript из .bat файла или вставить javascript в .bat файл.
Мне нужен код javascript для записи/чтения файла в локальной папке. Этот javascript должен быть способен выполнить его с помощью .bat.
Возможно ли это?.
Спасибо
SNA
Ответы
Ответ 1
Следуйте этим двум шагам, чтобы запустить 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.
Никогда больше не пытайтесь работать с другим свернутым пакетным файлом.
Ответ 2
в Windows, в пакетном файле, попробуйте
cscript jsfile.js
Ответ 3
Я знаю, что я немного опаздываю на это, но если у вас в вашей системе установлен node.js, вы можете использовать файл bat для вызова функции node и выполнить код javascript.
https://nodejs.org/en/
Node.js(при использовании модулей) позволяет делать несколько вещей, которые могут делать файлы bat. Используя только javascript, вы можете редактировать/фраять локальные файлы, запускать exe файлы ect... ect..
Пошаговое руководство по настройке этого будет:
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) создайте файл bat как это:
echo off
node "path-to-javascript\index.js"
И вы все настроены!
Ответ 4
Вы можете запустить JScript script из пакетного файла с помощью узла сценариев на основе командной строки CScript.exe.
Вам понадобится script в отдельном файле, который вы передадите в качестве аргумента в CScript.exe. Если вы хотите сохранить все в файле sinle, вы можете вставить JScript-код в ваш пакетный файл, выгрузить его во временный файл, который вы передадите в CScript.exe, и впоследствии удалить временный файл script.
Там могут быть более элегантные решения (надеюсь)
Ответ 5
Это вид. Конечно, в Windows.
Тем не менее, возможно, лучший способ сделать это. Для чего вам нужен JavaScript? Почему это должен быть JavaScript?
Ответ 6
Короткий ответ: нет.
Javascript (при запуске из браузера) не может получить доступ к клиентским ресурсам (это по дизайну, чтобы избежать угроз безопасности).
Вы можете использовать Javascript за пределами браузера, чтобы создавать скрипты, но вы должны предоставить более подробную информацию о том, что вы пытаетесь сделать (и о том, какую оперативную систему вы планируете запустить).
Кроме того, проверьте эту страницу для более подробной информации.
Ответ 7
Вы можете запустить JScript script из пакетного файла с помощью узла сценариев на основе командной строки CScript.exe.
Вам понадобится script в отдельном файле, который вы передадите в качестве аргумента в CScript.exe. Если вы хотите сохранить все в одном файле, вы можете вставить JScript-код в свой пакетный файл, выгрузить его во временный файл, который вы передадите в CScript.exe, и впоследствии удалить временный файл script.
Там могут быть более элегантные решения (надеюсь)