Die ausführbare Datei des Node-Skripts funktioniert nicht auf dem Mac: env: node \ r: Keine solche Datei oder kein solches Verzeichnis

7

Ich habe meine Node-Skript ausführbare erstellt, um einige Aufgaben grunt auszuführen. Unter Windows funktioniert mein Knotenscript einwandfrei. Aber auf Mac OS X (Yosemite) funktioniert es nicht.

Mein Knotenscript wurde unter Windows veröffentlicht.

Mein Knotenscript wird über den Befehl npm installiert:

%Vor%

Mein Knotenscript hat diese erste Zeile:

%Vor%

Ich habe viele Lösungen versucht, um mein Problem zu lösen, aber ich stecke immer noch fest.

Hier sind diese Lösungen, die ich verwendet habe:

  1. deinstalliere und installiere Node.js
  2. neu
  3. Führe diesen Befehl aus Erstellen Sie eine Verknüpfung für den Knoten: sudo ln -s / usr / bin / nodejs / usr / local / bin / Knoten
  4. setze meinen Pfad mit diesem Befehl: export PATH = $ PATH: / usr / local / bin / node

Haben Sie andere Vorschläge?

BEARBEITEN:

der Anfang meines Skripts:

%Vor%     
PauloDev 20.05.2015, 08:56
quelle

4 Antworten

22

Immerhin habe ich die Lösung für mein Problem gefunden.

Da meine Knotenscriptdatei unter Windows erstellt wurde, ist die Datei im DOS-Format (Zeilenende im DOS-Format, denke ich). Also habe ich ein Modul benutzt, mit dem man eine Datei in ein Unix-Format umwandeln kann:

%Vor%     
PauloDev 20.05.2015, 12:40
quelle
7

Sie könnten auch vim verwenden:

%Vor%

Damit werden Zeilenumbrüche im DOS-Stil für Zeilenumbrüche im Unix-Stil bestätigt.

    
JohnQ 04.11.2016 01:44
quelle
6

Es gibt ein Problem mit Zeilenumbrüchen in Ihrem Skript. Stellen Sie sicher, dass #!/usr/bin/env node gefolgt von \n (Unix-Stil) anstelle von \r\n (Windows / DOS-Stil) folgt. Um das zu beheben, verwenden Sie den Befehl tr , um \r aus Ihrer Datei zu entfernen:

%Vor%     
david_p 20.05.2015 09:17
quelle
0

Wie PauloDev oben sagt, handelt es sich hier um ein Mac / Windows-Problem. Wenn Sie nvm verwenden, müssen Sie zuerst Ihr Skript suchen (in meinem Fall verwende ich express-mvc-generator ):

%Vor%     
ow3n 10.02.2018 17:52
quelle