Dos2unix Linux -kommando

Dos2unix Linux -kommando
“Leter du etter en måte å konvertere DOS- eller Mac -format til UNIX -format? Hver gang du trenger å dele filer mellom Windows og UNIX-systemer, kommer filformatet, spesielt ren tekst, i spill. Hovedforskjellen er i linjepausen. For UNIX og Linux -systemer blir en slutt på en linje representert med en enkelt karakter, Line Feed (LF).

I kontrast bruker Windows -filer to tegn for å betegne en linjepause, vognreturen (CR), representert som (\ r), og linjefôret (LF), uttrykt som (\ n).

Med mindre du har riktig måte å konvertere filene på, vil du ha et ødelagt skript, kode eller formatering, noe som er irriterende. Her er den gode delen, denne guiden vil presentere eksempler på dos2unix -kommandoen for å komme i gang. Sjekk det ut!”

Konvertere Windows/DOS -tekstfil til UNIX

Dos2unix er et verktøy som lar konvertere DOS -tekstfiler til UNIX -format uten å påvirke strukturen og formateringen av teksten. Du må først installere verktøyet på UNIX -systemer for å bruke det.

$ sudo apt-get install dos2unix


Med verktøyet installert, er neste trinn å konvertere filen din.

Den grunnleggende syntaksen for å bruke dos2unix er:

$ dos2unix [alternativer] [fil-til-convert]

Hvordan bekrefte filformatet?

Noen ganger, hvis du er usikker på om filen du ønsker å konvertere er et DOS -format, kan du bruke VIM -redigereren eller kommandolinjen for å bekrefte formatet. I vårt tilfelle bruker vi en prøve1.tekst fil som ligger i nedlastingsmappen som vår DOS -fil.

For å bruke VIM for å bekrefte formatet, skriv inn kommandoen nedenfor på terminalen.

$ vim [filnavn]


Hvis du ikke har VIM Editor installert, installer den ved hjelp av kommandoen:

$ sudo apt-get install vim

Når filen åpnes i VIM -redigereren, kan du sjekke formatet ved å skrive

: sett ff?


Hit Enter, og du bør se at det gjeldende filformatet er satt til FileFormat = DOS som i saken nedenfor.


Du kan avslutte vim ved å skrive: q, Klikk deretter Enter for å komme tilbake til terminalen.

Alternativt kan du bruke kommandoen nedenfor for å sjekke filformatet:

$ od -bc prøve1.tekst

Du bør sjekke for å sikre at linjene slutter med \ r \ n for å bekrefte DOS -formatet i utgangen.

Bruker dos2unix for å konvertere DOS til UNIX

Nå som du er sikker på at filen din trenger konvertering, er kommandoen for å gjøre det ganske enkelt. Forsikre deg imidlertid om at du er i roten for å utføre den som vist.

Å konvertere uten å lagre det opprinnelige formatet:

$ sudo dos2unix prøve1.tekst


For å konvertere og fremdeles lagre den originale filen:

$ sudo dos2unix -b prøve1.tekst

Filen vil bli konvertert, og en sikkerhetskopi av den opprinnelige DOS -filen blir opprettet med en .Bak utvidelse under samme navn.

Det er det! Du har nå den samme filen, men i UNIX -format. Du kan bekrefte filens nåværende format som vi så ovenfor ved hjelp av enten VIM eller terminalen. Det skal gjenspeile et UNIX -format.

For å sjekke ved hjelp av VIM vil utdataene være:


For å sjekke ved hjelp av kommandolinjen:

$ od -bc prøve1.tekst

Utgangen vil være:


Du kan merke at sluttlinjen er \ n for å vise sitt UNIX -format. Bingo! Du har gjort det. Hovedmålet med Dos2unix -kommandoen er å fjerne \ r i \ r \ n DOS -format for bare å la igjen \ n For å matche UNIX -formatet.

Dos2unix nyttige alternativer

Du kan kombinere forskjellige alternativer med Dos2unix -kommandoen for å oppnå mer funksjonalitet. De inkluderer:

1. Få hjelp

Som enhver Linux -kommando, kan du enkelt få hjelpesiden for DOS2unix ved å bruke -h eller -hjelp:

$ dos2unix -h

2. Hopp over binære filer

Som standard blir binære filer hoppet over under konvertering. Alternativet som brukes er -s eller -sikker

3. Tvinge binærfilkonvertering

Hvis du vil konvertere de binære filene, kan du legge til -f eller -makt alternativ.

4. Utskriftsversjon

For å sjekke Dos2unix -versjonen, bruk -V eller -versjon alternativ.

5. Stillemodus

Advarsler og meldinger kan bli irriterende. Heldigvis kan du undertrykke dem ved hjelp av -q eller -stille alternativer.

6. Behold datastemplet

Når du konverterer DOS til UNIX, vil tidsstempelet til inndatafilen endres med mindre du begrenser den. For å beholde samme tidsstempel for utdata- og inndatafilen, bruk -k eller -KeepTate alternativer.

$ dos2unix -k prøve1.tekst

Konklusjon

Du kan ikke holde deg unna å overføre filer mellom Windows, Mac og UNIX. Med Dos2unix -kommandoen trenger du ikke bekymre deg for hvordan du vil konvertere filene. Du har lært hvordan du komfortabelt bruker Dos2unix -kommandoen for en enkel og rask konvertering.