Windows'ta Node.js'de hello.js dosyası nasıl çalıştırılır?


313

Javascript hello.js adlı ayrı bir dosyada yazılmış bir merhaba dünya programı çalıştırmaya çalışıyorum

Şu anda node.js'nin Windows sürümünü çalıştırıyor.

Kod konsol penceresinde mükemmel çalışır, ancak Windows ortamında yola nasıl başvururum .

C:\abc\zyx\hello.js

Unix sanırım $ node hello.js gösteriyor

Node.js için kesinlikle yeniyim. Yanlış bir şey yapıyorsam lütfen beni düzeltin.

denedim

> node C:\abc\zyx\hello.js ---- çalışmadı

> C:\abc\zyx\hello.js - çalışmadı

UPDATE1:

Hello.js dosyasının bulunduğu klasöre node.exe eklendi.
C: \ abc \ zyx \ klasörüne yol noktası eklendi ve şöyle bir hata mesajı alıyorum:

ReferenceError: merhaba tanımlanmadı

hello.js içeriğine bakın

setTimeout(function() {
console.log('World!');
}, 2000);
console.log('Hello');

GÜNCELLEME 2:

Şimdiye kadar tüm bu sürümleri denedim ve hiçbiri işe yaramadı . Belki tamamen yanlış bir şey yapıyorum.

>node hello.js
>$ node hello.js
>node.exe hello.js
>node /hello.js
>node \hello.js
> \node \hello.js
> /node /hello.js
> C:\abc\xyz\node.exe C:\abc\xyz\hello.js
> C:\abc\xyz\node.exe C:/abc/xyz/hello.js
> hello.js
> /hello.js
> \hello.js
>node hello

Dosyamın yapısına bakın

.
├── hello.js
├── node.exe
└── paths.txt

ÇÖZÜLDÜ: Node.exe'yi çalıştırmak yerine, komut isteminde aşağıdaki seçenekle çalıştırmayı deneyin ve işe yaradı.

c:\>node c:\abc\hello.js
Hello
World! (after 2 secs)

1
Biraz daha bilgi verebilir misiniz? Windows için bildiğim kadarıyla resmi bir düğüm yok, limanın başladığını duyurmak için sadece birkaç hafta önce yapıldı . Cygwin altında node.js kullanıyor musunuz, yoksa orada başka bir düğüm penceresi çatalı var mı (varsa, duymadım). EDIT: Önizleme derlemesi olduğunu fark etmedim. Özür dilerim.
Doug Stephen


6
Deneyin node hello.jsyerine node hello;)
Raynos

1
c:> ne olduğunu bilmiyorum ama dediğim gibi, "düğüm c: \ users \ me \ desktop \ helloworld.js" benim için işe yarayan komut isteminden.
user1873073

2
Seninle aynı sorunları yaşadım, komik, çünkü bugün 2016 bile, nodejs öğretmeye çalışan düzinelerce öğretici buldum, ancak hiçbiri '$ node filename.js'nin yanı sıra temel komutu nasıl çalıştıracağını adım adım öğretmiyor. Herkesin bunun için kök klasörü kullanmamız gerektiğini nasıl varsaydığını anlayamıyorum. Dosyaları barındırmak için disk kökünü kim kullanır?
Diego Mendes

Yanıtlar:


364

İşte http://nodejs.org/ adresinde bulunan "Merhaba Dünya" örneğini çalıştırmak için attığım tam adımlar . Bu hızlı ve kirli bir örnektir. Kalıcı bir yükleme için, yürütülebilir dosyayı kök dizinden daha makul bir yerde saklamak PATHve konumunuzu içerecek şekilde güncellemek istersiniz .

  1. Windows yürütülebilir dosyasını buradan indirin: http://nodejs.org/#download
  2. Dosyayı C: \ klasörüne kopyalayın
  3. C: \ hello.js oluşturun
  4. Aşağıdaki içeriğe yapıştırın:
    var http = require('http');
    http.createServer(function (req, res) {
      res.writeHead(200, {'Content-Type': 'text/plain'});
      res.end('Hello World\n');
    }).listen(1337, "127.0.0.1");
    console.log('Server running at http://127.0.0.1:1337/');
  1. Dosya 'yı kaydet
  2. Başlat -> Çalıştır ... -> cmd
  3. c:
  4. C:> node hello.js

    Server running at http://127.0.0.1:1337/

Bu kadar. Bu Windows XP'de yapıldı.


10
Tıkır tıkır çalışıyor!!! Çok teşekkürler. Hile, node.exe komut istemi yerine cmd'yi açmaktır.
Mitul

1
@Mitul - Doğru, bu sizin açıklamanızda eksik olan detay - yani düğüme nasıl başlıyorsunuz - başkalarının size yardım etmesini engelliyordu. Düğümden bağımsız değişken olmadan başlatılması, sizi REPL'e bırakır. Bu, javascript'i etkileşimli olarak yürütmek için bir ortamdır. Bir dosyanın yürütülmesine başlanacak yer değil. Daha fazla burada: nodejs.org/docs/v0.3.1/api/repl.html
Wayne


9
Bu, korkunç YAPMAYIN sabit diskinize kök içine düğüm yürütülebilir kopyalayın. Yollar bunun için amaçlanmıştır, bkz. @ Kcbanner'ın cevabı. Ayrıca, Pencerenin Düğüm yüklemesi, sistem yolunuzu değiştirmek istemiyorsanız yolların düzgün ayarlanmış bir Node.js komut istemiyle birlikte gelir.
joshperry

2
@joshperry - Bence noktayı biraz özlüyorsun. Soru orijinalden ağır bir şekilde düzenlenmiştir, ancak OP'nin ana problemi REPL'den bir dosya yürütmeye çalışmalarıdır. Cevabım hakkında hiçbir şey uzun vadeli bir kurulum çözümü olarak tasarlanmamıştır, hatta bu ima edilmez. Talimatlar, bir .jsdosyayı yürütmek ve REPL'yi açmak arasındaki farkı göstermek için çok basittir .
Wayne


28

Bunun nodeiçinde olduğundan emin olmalısın PATH. Yolunuzu ayarlamak için, bu yola çıktı .

Sahip dizin olduğundan emin olun node.exeGözlerinde farklı olduğunu PATH. O zaman koşabilmelisin node path_to_js_file.js.

İyi bir "Merhaba Dünya" örneği için şu adrese göz atın : http://howtonode.org/hello-node


Hello.js dosyasının bulunduğu klasöre node.exe'yi ekledim. Ayrıca c: \ abc \ zyx \ klasörüne yol noktası eklendi ve hata alıyorum
Mitul

Hata nedir? Gerçek hatanın ne olduğunu bilmeden yardım etmek zordur.
kcbanner

1
Üzgünüm, daha önce bahsetmeyi unuttum. Lütfen sorudaki güncellememe bakın. Yardım için teşekkürler.
Mitul

Ah anlıyorum. Bu, hello.js dosyanızın içindeki bir sorun gibi görünüyor. Lütfen bu dosyanın içindekileri gönderin
kcbanner

1
Yanıtımı düğüm için iyi bir "Merhaba Dünya" örneğiyle güncelledim.
kcbanner

8

başka basit bir yol

  1. nodejs'i sisteminize indirin
  2. bir not defteri açmak js komutu "console.log ('Merhaba Dünya');"
  3. dosyayı hello.js olarak kaydedin, tercihen nodejs ile aynı konuma kaydedin
  4. komut istemini aç düğümlerin bulunduğu konuma gidin
    c:\program files\nodejs
  5. ve komutu şu konumdan çalıştırın: c:\program files\nodejs>node hello.js
  6. başka bir konumdaki js dosyasının dosyanın yolunu vermesi durumunda c:\program files\nodejs>node path\hello.js

5

Windows için düğüm kurdum. Windows 7 başlat menüsünde node.js'yi aradığımda bir node.js komut istemi var Bu özel komut istemini çalıştırırsanız, yolu ayarlamadan veya node.exe'yi her yere kopyalamadan herhangi bir konumdaki herhangi bir şeyi düğümleyebilirsiniz.


3

WinXp: Bir .batdosya oluşturdum

node c:\path\to\file\my_program.js

Bu sadece my_program.batExplorer'dan veya cmd penceresinde çalışır


3

Cmd'ye gidin ve şunu yazın: "C: \ Path \ To \ File \ Sample.js" düğümü


3

Windows/CMDdüğüm dosyasının nerede olduğunu bilmiyor. Manuel olarak şunu yazabilirsiniz:

path=%path%;"c:\Program Files\nodejs"

yeni bir cmd.exe istemi her açtığınızda

VEYA (Windows 10'da),

  1. sağ tıklayın This PC-> properties.
  2. Advanced system settings-> Environment Variables(sağ altta) seçeneğini tıklayın .
  3. Seçin Pathve tıklayın Edit.
  4. Yeni'yi tıklayın ve girin C:\Program Files\nodejs.
  5. Yeniden başlatın ve düğümü herhangi bir dizinden çalıştırabilmelisiniz.

1

tip node jsbaşlangıç ekranında istemi komut. ve kullanın. VEYA PATHortam değişkeninde düğüm kümesi .


0

Herkes nasıl başlayacağına yapışmış!

https://github.com/sethvincent/javascripting

Bağlantı ölürse buraya kopyalayın:

  1. Node.js komut istemini açın
  2. "Mkdir javascripting" yazarak javascripting adlı dizin oluşturun
  3. "Cd javascripting" yazarak dizini javascripting klasörüne değiştirin
  4. "Dokunmatik giriş.js" VEYA WINDOWS İÇİN: "NUL> giriş.js" yazarak tanıtım.js adlı bir dosya oluşturun
  5. Dosyayı açın ve bazı javascript yazın, örneğin "Console.log ('hello');"
  6. Dosyayı kaydedin ve "javascripting verify introduction.js" yazarak çalışıp çalışmadığını kontrol edin

0

Yapmanız gereken tek şey, Windows'taki .js dosyasını sağ tıklayıp "Komut İstemi ile Aç" VEYA cmd'yi açmak, komut dosyanızı içeren klasörün yolunu kopyalamak ve "cd [metni buraya yapıştırın" komutunu çalıştırmaktır. Sonra "node example.js" dosyasını yapın


0

Sorun, herkes otomatik olarak komut isteminde olduğunuzu varsayarken Node.js repl'i açmanızdı. Değeri için .loadkomut ile repl bir javascript dosyası çalıştırabilirsiniz . Örneğin:

.load c:/users/username/documents/script.js

Komut isteminde düğümü ilk defa nodebağımsız değişken girmeden (düğümün PATH'de olduğu varsayılarak) girerek başlatırsanız, aynı komut komut isteminde de kullanılabilir .

1) herkesin repl yerine komut isteminde olduğunu varsaydığını büyüleyici buluyorum, 2) kimse bilmiyor gibi görünüyor .loadve 3) 273 upvotes var, diğer node.js yeni başlayanların da benzer şekilde karışık olduğunu kanıtlıyor.


0

Windows için böyle bir sorunum vardı. Ve buna karar verdim: startApp.cmd:

@set JAVA_HOME=C:\jdk160_24
@set PATH=%JAVA_HOME%/bin;%PATH%
@cd /D C:\app\

@start /b C:\WINDOWS\system32\cscript.exe 
C:\app\start.js

ve C: \ scripts dizininde cmd dosyasını kaydetti sonraki dosya runApp.bat:

C:\scripts\startApp.cmd

0

Sadece dosya ilişkilendirmesi değiştirmek .jsiçin dosyanın node.exeve kaşif doğrudan çalıştırabilirsiniz.

1) Right click on the file -> Select "Open with" -> Select "Choose another program"
2) Check box "Always use this app to open .js file"
3) Click "More apps" -> "Look for another app in PC"
4) Navigate to node.js installation directory.(Default C:\Program Files\nodejs\node.exe"
5) Click "Open" and you can just see cmd flashing

Not: js dosyasının sonuna aşağıdaki kodu eklemek, konsolu bir tuş vuruşu için açık tutacağı için faydalı olacaktır.

console.log('Press any key to exit');

process.stdin.setRawMode(true);
process.stdin.resume();
process.stdin.on('data', process.exit.bind(process, 0));

0

Windows için Adım

  1. ctrl + r tuşlarına basın. sonra cmd yazın ve enter tuşuna basın.
  2. şimdi komut istemi açılacaktır.

  3. sonra dosya cd dosyayolundan sonra. ex (cd C: \ Kullanıcılar \ kullanıcı \ Masaüstü \) sonra enter tuşuna basın.

  4. lütfen npm'nin yüklü olup olmadığını kontrol edin -v bu komut düğümünü kullanarak. yüklediyseniz, düğüm sürümü alırsınız.
  5. Komut istemine bu düğüm filename.js gibi komutu yazın. örnek (node ​​app.js)

C:\Users\user\Desktop>node app.js

-1
c:\> node.exe %CD%\hello.js

% CD%, DOS altında geçerli dizini yakalar


geçerli dizini kullanmak istiyorsanız, mutlak yol vermemelisiniz. c:\> node.exe hello.jsde çalışacak.
Ankit Balyan
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.