Bagaimana menjalankan file .js dari baris perintah di windows?

15

Saya memiliki jalan pintas dengan 'target' "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js".

Saya ingin menjalankannya dari file batch jadi saya menyalin "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"baris perintah cmd.exe dan menekan enter. Tidak ada yang terjadi.

Bagaimana saya bisa lari "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"dari baris perintah pada Windows7?

memperbarui

file js berisi

var WshShell = new ActiveXObject("Wscript.Shell");
WshShell.run("java -Dlog.dir=%TEMP% -jar taf-loader.jar", 0, false);
WScript.exit;

Saya mencoba menjalankan file js dengan keduanya Wscript.exedan Cscript.exeseperti yang disarankan @Serge tetapi tidak ada yang berhasil = program yang saya mulai dengan menggandakan klik belum dimulai. Juga tidak ada kesalahan.

C:\>Cscript.exe "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.


C:\>Wscript.exe "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"

C:\>
Radek
sumber
Bahasa apa itu file .js yang ditulis dalam JavaScript atau JScript?
Robert
@ Robert: Saya tidak tahu. Itu bukan skrip saya. Ini adalah produk komersial yang ingin saya mulai dengan satu klik atau dengan cara yang sangat cepat (Windows7). Jika saya pin apa yang sedang berjalan itu tidak akan mulai waktu berikutnya.
Radek

Jawaban:

14

Anda memiliki dua opsi:

Cscript.exe "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"

atau

Wscript.exe "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"

Yang pertama memulai versi baris perintah Host Scripting Windows dan yang terakhir memulai versi jendela.

Opsi baris perintah didokumentasikan di sini: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/cscript

dan di sini: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/wscript

Dalam file skrip Anda, Anda harus menggunakan path lengkap ke file jar Anda dan mungkin path lengkap ke java.exe

Atau, untuk memungkinkan java.exemencari tar-loader.jarfile, Anda harus mengubah direktori saat ini menjadi yang berisi file ini, jadi sebelum memanggil wscriptmakecd "C:\Users\Public\TestPro\TestPro Automation Framework\"

Seperti yang Anda sebutkan bahwa Anda ingin menjalankan skrip ini dalam satu sentuhan, Anda juga dapat membuat pintasan di desktop yang memiliki baris perintah yang disetel ke Wscript.exe "C:\Users\Public\TestPro\TestPro Automation Framework\taf.js"dan direktori kerja diatur keC:\Users\Public\TestPro\TestPro Automation Framework\

Serge
sumber
Saya setuju dengan Serge, mengapa tidak langsung lari java -Dlog.dir=%TEMP% -jar taf-loader.jardari command-line atau batch? Mengapa metode serba bisa ini? (Jelas, java.exe harus di PATH.)
Karan
@Karan & Serge: Lihat komentar saya di bawah pertanyaan saya. Itu bukan skrip saya. Saya tidak ingin memodifikasinya. Mungkin saya bisa menggunakan kode darinya untuk membuat file batch saya sendiri atau semacamnya. Saya lebih suka tidak mengubah apa pun.
Radek
"Mungkin aku bisa menggunakan kode darinya untuk membuat file batch-ku sendiri atau semacamnya." - Ya, jadi apa yang terjadi ketika Anda melakukannya?
Karan
Itu hanya sedikit. Saya tidak tahu bagaimana melakukannya sekarang dan saya tidak yakin apakah dapat menyebabkan masalah mengapa saya memulai program dalam batch seperti itu dan itu tidak 100% benar.
Radek
@ Radek melakukan keduanya tar-loader.jar berada di direktori 'C: \ Users \ Public \ TestPro \ TestPro Automation Framework \' yang sama?
Serge
2

Jika Anda dapat menjalankan 'java' di jendela konsol tanpa kesalahan, maka

1) Buat file teks di desktop Anda yang disebut 'taf.txt'

2) Masukkan "java -Dlog.dir =% TEMP% -jar taf-loader.jar" ke dalam file teks, dan simpan

3) Ubah nama file menjadi 'taf.bat'

Selesai

Menggunakan host skrip untuk memulai skrip yang meluncurkan shell yang meluncurkan program java terlalu panjang lebar.

Pikirkan dalam hal apa yang ingin Anda capai - Anda ingin program diluncurkan dengan mengklik ikon.

File batch adalah cara tercepat untuk mencapai itu di win7.

Jika Anda menggunakan OS yang secara asli dapat memulai skrip Javascript tanpa mengacaukannya akan menjadi cara yang bagus untuk meluncurkannya, tetapi skrip itu tidak akan bekerja pada apa pun selain windows (kecuali ActiveX porting sekarang - sudah lama waktu sejak saya menggunakannya).

Sumber: Pengembang Java Profesional selama lebih dari 10 tahun

Alex
sumber
0

Java 1.6 hadir jrunscriptuntuk menjalankan JavaScript di luar browser web.

Umapathy Ravichandiran
sumber
Ini bukan untuk file javascript (js): itu untuk skrip Java dan (sekarang) tidak termasuk dalam JRE.
0zkr PM