Hoe bestanden converteren van Linux / Unix-formaat naar Windows en vice versa
Als u ooit een tekstbestand van een op UNIX gebaseerd systeem rechtstreeks naar een Windows-systeem hebt overgezet, weet u dat wanneer u het tekstbestand op het Windows-systeem opent, het meestal niet correct wordt weergegeven. Op Windows gebaseerde tekstlezerprogramma's (zoals Kladblok) kunnen de tekst mogelijk niet weergeven. In de meeste gevallen, wanneer u het tekstbestand opent, worden alle woorden weergegeven op een enkele gigantische regel, zonder onderbrekingen. Dit komt omdat er een klein verschil is in de manier waarop een tekstdocument wordt geschreven (en gelezen) op Windows en UNIX.
Als een bestand is geschreven op een Windows-systeem en wordt geopend door een teksteditor op een UNIX-systeem, is het heel gewoon dat de tekens "Ctrl-M" (^ M) aan het einde van elke regel tekst worden weergegeven. Als een bestand op een UNIX-systeem is geschreven en door een teksteditor op een Windows-systeem is geopend, wordt het regeleinde-teken (EOL) mogelijk niet correct weergegeven. Het carriage return karakter is ook verschillend voor zowel UNIX als Windows.
Tijdens het omgaan met bestanden, wil je niet worden beperkt door het feit of het bestand is gemaakt op Linux of Windows. Dus hoe converteer je een bestand van UNIX naar Windows (of omgekeerd) zonder dat het formatteren helemaal gek is? We zullen je door de treden leiden.
Bestanden converteren van Linux / UNIX-indeling naar Windows-indeling
Als u een op UNIX gebaseerd systeem gebruikt om de bestanden naar een Windows-systeem over te brengen, zijn er enkele opdrachten waarmee u het tekstbestand (en) kunt converteren dat u overdraagt naar een indeling die Windows begrijpt.
De opdracht dos2unix en unix2dos
U kunt de opdrachtregel gebruiken om bestanden veilig van UNIX naar Windows te converteren en omgekeerd. Als u een Windows-tekstbestand naar een UNIX-tekstbestand wilt converteren, voert u dit in:
dos2unix windows.txt unix.txt
Het bovenstaande commando converteert en vervangt "windows.txt" bestand naar "unix.txt". Als u een UNIX-tekstbestand naar een Windows-tekstbestand wilt converteren, voert u deze opdracht in:
unix2dos unix.txt windows.txt
Met de opdracht hierboven wordt een UNIX-gemaakt tekstbestand met de naam "unix.txt" geconverteerd naar een Windows-compatibel tekstbestand met de naam "windows.txt".
Het commando awk
Met de opdracht awk
kunt u ook een bestand van UNIX naar Windows converteren en omgekeerd. Om een Windows-bestand naar een UNIX-bestand te converteren, voert u de volgende opdracht in:
awk '{sub ("\ r $", ""); print} 'windows.txt> unix.txt
Als u een UNIX-tekstbestand met de naam "unix.txt" wilt converteren naar een Windows-tekstbestand met de naam "windows.txt", voert u de volgende opdracht in:
awk 'sub ("$", "\ r")' uniz.txt> windows.txt
Het tr-commando
Het tr
commando (transliterate) kan worden gebruikt om de carriage-return-tekens en de "Ctrl-Z" -tekens uit een Windows-bestand te verwijderen. Dit kan alleen worden gedaan als u een bestand converteert van Windows naar UNIX. Het commando zal als volgt worden geschreven:
tr -d '\ 15 \ 32' <winfile.txt> unixfile.txt
Het tr
commando vertaalt het ene teken naar het andere. In dit geval helpt het u overbodige tekens weg te laten.
De visuele editor gebruiken (Vi)
Als u de Visual Editor gebruikt om een bestand te bekijken dat op een Windows-systeem is gemaakt, kunt u de carriage-return-tekens verwijderen door de volgende opdrachtregel te typen:
: 1, $ s / ^ M // g
Om ervoor te zorgen dat de computer het ^ M-teken invoert, moet u op "Ctrl + v" drukken en vervolgens op Return drukken.
Programma's voor bestandsoverdrachtprotocol gebruiken
File Transfer Protocol (FTP) -programma's zijn beschikbaar voor zowel UNIX- als Windows-systemen. Als u veel bestanden van Windows naar UNIX (of andersom) wilt converteren, is het een goed idee om een FTP-programma te downloaden. Er zijn veel gratis beschikbaar op internet. De Hummingbird FTP is een van de meer populaire FTP-programma's die er zijn. Het is veilig en gemakkelijk te gebruiken.
De meeste FTP-programma's zullen bestanden van UNIX naar Windows overbrengen in de ASCII-indeling. Soms moet u zelf het formaat opgeven (als u FTP-programma's op opdrachtregel gebruikt). Om dit te doen, voert u dit gewoon in op de opdrachtregel:
ascii
Conclusie
De eenvoudigste manier om een bestand van een UNIX-indeling naar Windows te converteren (en andersom) is om een FTP-programma te gebruiken. De conversie-opdrachten zijn uw volgende beste gok. Als u op zoek bent naar extra opdrachten die dezelfde taak uitvoeren, kunt u zoeken naar perl
en sed
opdrachten. Houd er echter rekening mee dat deze opdrachten mogelijk niet voor alle systemen werken.