2016-06-24 18 views
0

Ich habe npm V3.10.3 installiert und ich versuche, es zu verwenden, um ein Paket zu installieren, wie folgt:npm auf Mac OS installiert Skripte, die nicht ausgeführt werden

sudo npm install markdown-to-html -g 

Es sieht aus wie es herunterlädt und installiert alles, Die Skriptdateien haben jedoch DOS-ähnliche Zeilenabschlüsse (CR/LF) und die Bash-Shell kann damit nicht umgehen. Als Ergebnis:

$ markdown README.md 
-bash: /usr/local/bin/markdown: node^M: bad interpreter: No such file or directory 

Das Skript beginnt mit:

$ cat /usr/local/bin/markdown 
#!node 
// Converts a markdown file into an HTML file, writing it to stdout. 
// 

Es scheint, dass der^M bash verursacht nicht Knoten zu finden, die installiert ist. Gibt es eine Möglichkeit, dies systemisch zu beheben? Ich möchte die Dateien nach der Installation nicht wirklich manuell verarbeiten.

Antwort

1

Das Modul, das Sie verwenden, sieht so aus, als wäre es Abandonware, weil es anscheinend schon so lange her ist. Die beste Lösung könnte sein, einen anderen Abschlags Prozessor zu finden, aber wenn Sie wirklich, diese verwenden möchten, ist hier eine Abhilfe:

  • Öffnen Sie die ausführbare Datei im vi Editor: sudo vi `which markdown` (Sie normalerweise brauchen nur sudo in Dieser Befehl, wenn Sie sudo verwendet haben, um das Modul an erster Stelle zu installieren.Sie oben angeben, dass Sie das getan haben, aber für andere können und sollten Sie wahrscheinlich die sudo deaktivieren, wenn Sie es nicht benötigen, das Modul an erster Stelle zu installieren .)

  • Alle Leitungsenden in UN ändern IX Zeilenenden durch :set ff=unix eingeben und die Eingabetaste drücken,

  • Speichern Sie die Änderungen und beenden Sie den Editor durch :wq eingeben und die Eingabetaste drücken,

Der markdown Befehl sollte jetzt verwendbar sein.

+0

so zusammenfassend ist das Problem mit dem Paket. Ich hatte gedacht, dass das npm-Paket, das ich irgendwie benutze, vielleicht die falsche Version oder Variante davon war. Ich werde Ihre Problemumgehung für jetzt verwenden, aber auch nach einem anderen besseren Paket suchen. – AlanObject

Verwandte Themen