Ovim jednostavnim tutorski, rješavamo malu nezgodu koja će vam se sigurno dogoditi. Mnogo puta će nam se dogoditi da se prilikom otvaranja .txt datoteke u Linuxu ili Windowsu tekst modificira u odnosu na način na koji smo ga uredili na početku. Ono što se događa je da su nam se linije pridružile i da se razmaci ne pojavljuju. To je zato što se format tekstualne datoteke tipa UNIX razlikuje od tipa DOS u smislu karaktera kraj reda (EOL) koje zapošljavaju.
Za UNIX sisteme, znak je "dodavanje linije / nova linija" ili LF i to odgovara \ n, ako programirate, zvučit će vam. Dok se u sustavu Windows sustav koji se koristi u starom DOS-u nasljeđuje, to jest, "povratak kočije" nakon čega slijedi "dodavanje reda / nova linija" (\ r \ n). Ako smo, na primjer, datoteku uredili u Linuxu i otvaramo je s Windowsom (a format u kojem smo je spremili nije prikladan), tada će biti sretan problem da se sav tekst zalijepi bez prostora ili prekidi linija.
U Linuxu je lako pretvoriti iz jednog formata u drugi a da ništa ne instalirate na našem sistemu, samo koristite ove naredbe:
- OD DOSA DO UNIXA:
Koristit ćemo naredbu tr, nakon čega slijedi parametar -d i odgovarajući EOL znak. Također ćemo koristiti poznate "pipe" za rad s DOS tekstualnom datotekom ("filename") i onom koju želimo generirati pretvorenu u UNIX format ("filename"). Naravno, prvo moramo upotrijebiti cd naredbu da bismo otišli u mapu u kojoj se nalazi datoteka koju treba pretvoriti ili iz grafičkog sučelja prenijeti datoteku u / Home (po defaultu gdje se nalazi upit):
tr -d '\n' < nombre_archivo > nombre_fichero</p>
- OD UNIXA DO DVIJE:
Sada ćemo koristiti naredbu sed za pretvaranje Unix datoteke u DOS tip. Za ovo ćemo upotrijebiti sljedeću sintaksu, zamjenjujući ime datoteka za datoteku koju treba pretvoriti. Želim pojasniti, kad god pišem datoteku, mislim na Unix tip i kada stavim datoteku na Windows / DOS tip.
sed 's/$/\r/' nombre_fichero > nombre_archivo</p>
U svakom slučaju, u modernim uređivačima teksta već nam daje mogućnost "Spremi kao”U formatu koji želimo, a da to ne moramo raditi s terminala. Ali uvijek je dobro znati više o Linux naredbenom retku. Druga mogućnost je korištenje dva alata dizajnirana u tu svrhu, dos2unix i unix2dos, ali u mnogim distribucijama oni nisu instalirani prema zadanim postavkama i trebali bi biti instalirani ...
Tačna je izjava
tr -d 'r' naziv datoteke