Pretvarjanje DOS / UNIX in obratno

Obstaja več pripomočkov za pretvorbo besedilnih datotek iz UNIX ali Linux v operacijske sisteme DOS in obratno; Vendar pa vedno pomaga vedeti ročno pretvorbo. V programskih jezikih lupine, kot sta UNIX ali Linux, se besedilne datoteke zaključijo z novim operaterjem vrstice "n", ki je znan tudi kot podajanje vrstice in njegova koda ASCII je 0A. Besedilna datoteka DOS zaključuje vrstico s povratkom vnosa ali tipko za vnos "r": njena ASCII koda je 0D. Vrstice v DOS se končajo s CRLF ali z "r". Če želite to DOS besedilo pretvoriti v UNIX ali Linux, izbrišite "R"; lahko uporabljate tudi kode ASCII, če uporabljate različico GNU-sed. Iz UNIX-a v DOS lahko dodate "R" ali pa uporabite GNU-sed zapise simbolično z ASCII kodami.

Uvod

Čeprav obstajajo uporabniški programi (dos2unix in unix2dos), ki lahko opravijo to nalogo, je tukaj preprosta napotka o tem, kako ročno narediti te funkcije.

Pretvorba DOS-a v UNIX / UNIX v DOS

Besedilne datoteke pod Unixom končajo svojo vrstico s simbolom "n" (imenovan "Line Feed" in označen LF, ASCII koda = 0A).

Besedilne datoteke pod DOS-om z "vrstico", konča njihovo črto s simbolom "r" (imenovano Povračilo prevoza in zapisano CR, ASCII 0D).

Tako se vsaka vrstica v datoteki DOS konča s zaporedjem CRLF ali \ t

Pretvorba iz DOS-a v UNIX

Preprosto izbrišite "r" (povratek nosilca) na koncu vrstice.

"R" je simbolično predstavljen z "^ M", ki ga dobimo z naslednjim zaporedjem tipk "CTRL-V" + "CTRL-M".

 datoteka sed 's / ^ M $ // 

Opomba:

Z različico GNU-sed (gsed 3.02.80) lahko uporabimo zapis ASCII:

 datoteka sed 's / 0D $ // 

Pretvorba iz UNIX v DOS

Samo naredite nasprotno od prejšnjega ukaza, namreč ("^ M" se vnese na enak način (CTRL-V + CTRL-M)):

 sed 's / $ / ^ M /' datoteka 

Opomba:

Z različico GNU-sed (gsed 3.02.80) lahko uporabimo simbolično oznako "r": \ t

 datoteka sed / s / $ / r / '. \ t 
Prejšnji Članek Naslednji Članek

Top Nasveti