PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Kopieren mit cp oder scp verändert Dateien! Abstellmöglichkeit gesucht



robert_S
23.06.05, 12:04
Hallo,

Das kopieren soll eigentlich mittels scp zwischen 2 Linuxrechnern geschehen.

Wenn ich eine Text-Datei mittels cp oder scp kopieren möchte werden aus den Trennzeichen Hex 0D0A das 0D entfernt.

Das ist sehr schlecht, da diese Textdatei Grundlage für ein Programm ist, welches gerade die Trennzeichen exakt so braucht wie im Original.

Wenn ich mir die Datei vom Linuxrechner mittels WinSCP auf den Windowsrechner kopiere bleibt die Datei unverändert - so wie es sein soll.

Wie kann ich also über die Shell scp verwenden, damit die txt-Datei unverändert bleibt.

Danke ;)

darkmind
23.06.05, 12:28
ich hoffe mal ich hab das jetzt richtig verstanden aber ich glaube du suchst dos2unix bzw unix2dos.

im dos-fileformat ist der zeilenumbruch als carriage return/linefeed 0x0D0A definiert. unix macht nur ein linefeed 0x0A.

mit dos2unix bzw. unix2dos kannst du die jeweiligen line terminators ins andere format umwandeln

robert_S
23.06.05, 13:04
ich hoffe mal ich hab das jetzt richtig verstanden aber ich glaube du suchst dos2unix bzw unix2dos.

im dos-fileformat ist der zeilenumbruch als carriage return/linefeed 0x0D0A definiert. unix macht nur ein linefeed 0x0A.

mit dos2unix bzw. unix2dos kannst du die jeweiligen line terminators ins andere format umwandeln

Hallo,

ja, damit funktioniert es, danke. Aber gibts da wirklich keine Linuxeigenen Mittel, mit denen man das machen kann? Es muss doch möglich sein, eine Datei ohne Änderung einfach zu kopieren.

Aber mit dos2unix funktioniert es ja erstmal...

darkmind
23.06.05, 13:16
Aber gibts da wirklich keine Linuxeigenen Mittel, mit denen man das machen kann?

die datei wird ja 1:1 kopiert! nur der zeilenumbruch wird zwischen unix und dos anders interpretiert.

temir
23.06.05, 14:16
Der Transfer soll nicht mit auto/text erfolgen sondern binary, weils Format eh stimmt.

robert_S
23.06.05, 14:56
Der Transfer soll nicht mit auto/text erfolgen sondern binary, weils Format eh stimmt.

Und wie kann ich das machen? Bei WinSCP ist es ja nur ein Häkchen, was man setzen muss und dann funktioniert es auch wie gewollt. Aber bei scp find ich im manual keine entsprechende Option, die ich verwenden könnte um den Transfermodus zu bestimmen.

jpfote
24.06.05, 11:53
Entweder "rsync" verwenden oder die Datei vorher mit "tar czf" packen.

temir
24.06.05, 14:49
sftp verwenden. Der nuzt bin bei default. Geht auch in batch.