Ana Cevap
Evet, sorunuzu yanıtlamak için JavaScript'i tarayıcı olmadan komut satırından "normal" bir kodlama dili olarak kullanmak mümkündür. Başkaları henüz bahsetmediğinden, bahsetmeye değer olduğunu görüyorum:
Debian tabanlı sistemlerde (ve buna en azından Ubuntu, Linux Mint ve aptosid / sidux dahildir), Rhino ve daha önce bahsedilen diğerlerini yükleme seçeneklerinin yanı sıra başka seçenekleriniz de vardır:
libmozjs-24-bin
Mozilla'nın Spidermonkey motorunu komut satırına basit bir şekilde sağlayacak olan paketi kurun ve js24
aynı zamanda etkileşimli bir tercüman olarak da kullanılabilir. ( 24
İsimdeki, Firefox'un 24 sürümüne karşılık geldiği anlamına gelir).
libv8-dev
Size Google'ın V8 motorunu sağlayacak olan paketi yükleyin . Örneklerinden biri olarak, /usr/share/doc/libv8-dev/examples/shell.cc.gz
çok basit bir şekilde açıp derleyebileceğiniz dosyaya sahiptir (örn., g++ -Os shell.cc -o shell -lv8
).
Paketini kurmak nodejs
ve çalıştırılabilir olarak mevcut olacaktır nodejs
ve bir şekilde bir alternatif temin etmek üzere (Debian anlamda) js
yürütülebilir. JIT derlemesi, V8'in izniyle sağlanmıştır.
Paketi kurun libjavascriptcoregtk-3.0-bin
ve WebKit'in JavaScriptCore yorumlayıcısını ( jsc
) komut satırından normal bir yorumlayıcı olarak kullanın. Ve bu, bir Mac'e erişmenize gerek kalmaz. Birçok platformda (örneğin, x86 ve x86_64), bu yorumlayıcı bir JIT derleyicisiyle birlikte gelir.
Yani, neredeyse hiç derleme olmadan, emrinizde üç tane ağır JavaScript motoruna sahip olacaksınız.
ek
Bir şeyler yükledikten sonra, #!/usr/bin/js
shebang satırı ile dosyalar oluşturabilirsiniz ve her şey işe yarayacaktır:
$ 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!
$