Можно ли выполнить & ldquo; .js & rdquo; файл с параметрами? [Дубликат]

socket_create должен запускаться как root в системе UNIX с:

$socket = socket_create(AF_UNIX, SOCK_STREAM, 0);
123
задан 太極者無極而生 4 March 2016 в 13:36
поделиться

13 ответов

Я знаю, что вы спрашивали о Linux и Mac; Я собираюсь предоставить ответ для Windows, если другие люди, интересующиеся Windows, найдут ваш вопрос.

Windows включает в себя механизм Javascript, который может использоваться из командной строки.

Все версии Windows, начиная с Windows 98, включили что-то, называемое « Хост сценария Windows ". Это стандартный для Windows способ поддержки скриптовых «движков». Начиная с первого выпуска, WSH поддерживает JScript, версию Javascript от Microsoft. Помимо прочего, это означает, что из командной строки Windows вы можете просто вызвать имя любого * .js-файла, и оно будет запущено в JScript-движке. (через wscript.exe или cscript.exe)

Вы можете увидеть этот вопрос: Что такое ProgId или CLSID для движка Javascript IE9 (под кодовым названием Chakra & quot;) , чтобы узнать, как вызвать более мощный Javascript-движок IE9 от cscript.exe.

43
ответ дан Community 20 August 2018 в 09:16
поделиться
  • 1
    переводчик Chrome / Google V8 - это именно то, что я искал! Спасибо! – Daniel 31 May 2010 в 06:17
  • 2
    NodeJS в 0.1.101 имеет узел-repl, который дает вам доступ к среде CLI. Это отлично подходит для тестирования / обучения JS. – CyberFonic 20 July 2010 в 10:58
  • 3
    С nodejs v0.10.25 на Ubuntu, набрав nodejs в терминале, вы получите доступ к REPL. – Иван Бишевац 12 May 2014 в 04:53
  • 4
    Какое из перечисленных выше, если таковое имеется, включает HTML DOM? – Old Geezer 28 May 2016 в 01:33
43
ответ дан Community 31 October 2018 в 07:41
поделиться

JSDB , доступный для Linux, Windows и Mac, должен хорошо соответствовать счету. Он использует механизм Javascript Mozilla Spidermonkey и кажется, что это меньше хлопот для установки по сравнению с node.js (по крайней мере, в прошлый раз я попробовал node.js пару лет назад).

Я нашел JSDB из этого интересный список оболочек Javascript: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Shells

1
ответ дан Andz 20 August 2018 в 09:16
поделиться

Вы можете проверить Rhino .

. Rhino Shell предоставляет способ запуска скриптов JavaScript в пакетном режиме:

java org.mozilla.javascript.tools.shell.Main my_javascript_code.js [args]
3
ответ дан Daniel Vassallo 20 August 2018 в 09:16
поделиться

Я использую Ubuntu 12.10 и js из командной строки

Он доступен с моей установкой java:

el@apollo:~/foo$ java -version
java version "1.6.0_27"
el@apollo:~/foo$ which js
/usr/bin/js

Некоторые примеры:

el@apollo:~/foo$ js
> 5
5

> console.log("hello");
hello
undefined

> var f = function(){ console.log("derp"); };
undefined
> f();
derp

> var mybool = new Boolean();
undefined
> mybool
{}
> mybool == true
false
> mybool == false
true

> var myobj = {};
undefined
> myobj.skipper = "on my mark, engage!"
'on my mark, engage!'
> myobj.skipper.split(" ");
[ 'on',
  'my',
  'mark,',
  'engage!' ]

Небо - это предел, затем продолжайте движение.

3
ответ дан Eric Leschinski 20 August 2018 в 09:16
поделиться

Поскольку никто не упоминал об этом: начиная с Java 1.6 Java JDK также поставляется с командной строкой JavaScript и REPL.

Он основан на Rhino: https://developer.mozilla.org/ ru / docs / Rhino

В Java 1.6 и 1.7 команда вызывается jrunscript (jrunscript.exe в Windows) и может быть найдена в папке bin JDK.

Начиная с Java 1.8 добавлена ​​новая реализация JavaScript (Nashorn: https://blogs.oracle.com/nashorn/ )

Итак, в Java 1.8 команда называется jjs (jjs.exe в Windows)

7
ответ дан jbandi 20 August 2018 в 09:16
поделиться

Я знаю, что это старо, но вы также должны попробовать Zombie.js . Безголовый браузер, безумно быстрый и идеальный для тестирования!

2
ответ дан neebz 20 August 2018 в 09:16
поделиться

Я нашел этот действительно превосходный совместимый с ECMAScript совместимый JS Engine с открытым исходным кодом, полностью написанный на C под названием duktape

Duktape - встраиваемый механизм Javascript с акцентом на переносимость и компактный след.

Удачи!

2
ответ дан Pawan Kumar 20 August 2018 в 09:16
поделиться

Основной ответ

Да, чтобы ответить на ваш вопрос, можно использовать JavaScript как «обычный» язык сценариев из командной строки без браузера. Поскольку другие еще не упомянули об этом, я вижу, что стоит упомянуть:

В системах на базе Debian (как минимум, это Ubuntu, Linux Mint и aptosid / sidux), помимо опций установка Rhino и других уже упомянутых, у вас есть другие возможности:

  • Установите пакет libmozjs-24-bin , который предоставит вам механизм Spidermonkey Mozilla в командной строке, как простой js24, который может использоваться также как интерактивный интерпретатор. (24 в названии означает, что он соответствует версии 24 Firefox).
  • Установите пакет libv8-dev , который предоставит вам движок V8 от Google. В качестве одного из своих примеров он имеет файл /usr/share/doc/libv8-dev/examples/shell.cc.gz, который вы можете просто распаковать и скомпилировать (например, g++ -Os shell.cc -o shell -lv8).
  • Установить пакет nodejs и он будет доступен как исполняемый файл nodejs, так и альтернатива (в смысле Debian), чтобы предоставить исполняемый файл js. Компиляция JIT предоставляется в соответствии с V8.
  • Установите пакет libjavascriptcoregtk-3.0-bin и используйте интерпретатор JavaScriptCore WebKit (jsc) в качестве обычного интерпретатора из командной строки. И это без необходимости иметь доступ к Mac. На многих платформах (например, x86 и x86_64) этот интерпретатор будет поставляться с компилятором JIT.

Итак, почти без компиляции у вас будет три тяжелых двигателя JavaScript на вашем

Добавление

После того, как вы установили вещи, вы можете просто создавать файлы с помощью строки #!/usr/bin/js shebang, и все будет работать:

$ cat foo.js 
#!/usr/bin/js

console.log("Hello, world!");
$ ls -lAF /usr/bin/js /etc/alternatives/js /usr/bin/nodejs
lrwxrwxrwx 1 root root      15 Jul 16 04:26 /etc/alternatives/js -> /usr/bin/nodejs*
lrwxrwxrwx 1 root root      20 Jul 16 04:26 /usr/bin/js -> /etc/alternatives/js*
-rwxr-xr-x 1 root root 1422004 Apr 28 20:31 /usr/bin/nodejs*
$ chmod a+x foo.js 
$ ./foo.js 
Hello, world!
$ js ./foo.js
Hello, world!
$
52
ответ дан rbrito 20 August 2018 в 09:16
поделиться

PhantomJS позволяет это сделать также

http://phantomjs.org/

2
ответ дан Sameer 20 August 2018 в 09:16
поделиться

Ну, есть JavaScript как OSA , расширение, которое предоставляет JavaScript в качестве альтернативы appleScript. Я использовал это около 10 лет назад, не знаю, работает ли он с текущими версиями ОС

1
ответ дан Sean Patrick Floyd 20 August 2018 в 09:16
поделиться

FWIW, node.js поставляется с оболочкой, попробуйте ввести:

node-repl

после того, как вы установили node.js, чтобы увидеть его в действии. Стандартно установить rlwrap, чтобы заставить его работать хорошо.

6
ответ дан thejefflarson 20 August 2018 в 09:16
поделиться
  • 1
    Я нахожу узел-repl, а также используя hash-bang, которые очень хороши в получении быстрых программ, работающих с NodeJS. Он быстрый и простой в использовании. – CyberFonic 20 July 2010 в 11:01

Я установил Node.js на iMac и

node somefile.js

в bash будет работать.

20
ответ дан 太極者無極而生 20 August 2018 в 09:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: