Ich habe eine SMB-Verbindung zu einem Ubuntu Server 12.10-Host mit Shell-Skripten und Konfigurationsdateien, die ich mit einem Windows 7-Client mit Notepad ++ bearbeiten möchte. Ich kann die Dateien öffnen und Änderungen vornehmen, aber sobald ich sie speichere, ohne die Zeichenkodierung zu ändern, sind sie auf dem Host nicht mehr lesbar.
Wie kann ich die Dateien in Windows 7 bearbeiten und speichern, damit sie in Ubuntu Server 12.10 gelesen und ausgeführt werden können?
Antworten:
BEARBEITEN: Sie können die Unix-Leitungsbeendigung in Notepad ++ unter Bearbeiten - & gt; EOL-Konvertierung - & gt; Unix-Format.
Eines der häufigsten Probleme bei der Kompatibilität von Textdateien zwischen Unix- und Windows-Systemen besteht darin, dass Windows als Terminierung CRLF (Wagenrücklauf + Zeilenvorschub, ASCII 13 und 10) bezeichnet, während Unix nur LF (10) verwendet. Dies führt wahrscheinlich zu einem Fehler wie
./foo.sh: bad interpreter: /bin/sh^M: no such file or directory
.Es gibt ein Dienstprogramm namens
dos2unix
das wird alle vorhandenen Dateien für Sie konvertieren, auf der Ubuntu-Seite:Dadurch wird die vorhandene Datei so geändert, dass die CRs entfernt werden.
quelle
Wie Jim sagte, ist das Problem wahrscheinlich die Leitungsbeendigung. Sie können dies auf dem Linux-Server beheben, indem Sie diesen Befehl für Ihre geänderten Dateien ausführen:
quelle