Supposedlyjjs
- это версия 8-го Java нашорна, ready for shell-scripting. Однако, когда я пишу файл с правами на выполнение как:Написание сценария jjs` shebanged, который принимает только аргументы
#!/usr/bin/jjs
arguments.forEach(function(v,i,a){print(v);});
Забегая производит некоторые не столь идеального поведения оболочки сценариев:
$./file.js
$./file.js one two
java.io.IOException: one is not a file
$./file.js -- one two
one
two
$./file.js file.js -- one two # what were they thinking
one
two
one
two
$
Так что, я не хочу этот скрипт I пишу, чтобы для произвольной интерпретации файла после того, как он работает, может быть, я должен использовать --
в притон, как:
#!/usr/bin/jjs --
arguments.forEach(function(v,i,a){print(v);});
Но это становится менее полезно:
$./file.js
jjs>^D
$./file.js one two
jjs>^D
$./file.js -- one two
jjs>
Да, при падении в REPL строке именно то, что я думал, что должен не случиться.
Как я должен сделать возможным выполнить сценарий с аргументами, которые передаются непосредственно и не интерпретированы джозефсоновскими себя, что я могу получить поведение как:
$./file.js one two
one
two
$
Я могу» t найти, где они cla im, он может использоваться как сценарий оболочки? Однако в документах упоминается jrunscript. – RobAu
@RobAu Я предполагаю, что я не связывал сообщение в блоге, которое я прочитал, который утверждал это, и может быть неясно, что 'jjs' является дополнением к' jrunscript', который имеет расширения при использовании флага '-scripting', позволяющего' $ ARG', '$ ENV', heredocs, backticks и еще несколько сценариев. – dlamblin