828 lines
50 KiB
Text
828 lines
50 KiB
Text
НАЗИВ
|
||
dos2unix – претварач формата текстуалних датотека из ДОС/Мек-а у Јуникс
|
||
и обратно
|
||
|
||
УВОД
|
||
dos2unix [опције] [ДАТОТЕКА ...] [-n УЛАЗНА_ДАТОТЕКА ИЗЛАЗНА_ДАТОТЕКА ...]
|
||
unix2dos [опције] [ДАТОТЕКА ...] [-n УЛАЗНА_ДАТОТЕКА ИЗЛАЗНА_ДАТОТЕКА ...]
|
||
|
||
ОПИС
|
||
“dos2unix“ пакет укључује помагала „"dos2unix"“ и „"unix2dos"“ за
|
||
претварање обичне текстуалне датотеке у ДОС или Мек формат у Јуникс
|
||
формат и обратно.
|
||
|
||
У ДОС/Виндоуз текстуалним датотекама преламање реда, такође познато и
|
||
као нови ред, је комбинација два знака: „Carriage Return“ (CR) за којим
|
||
следи „Line Feed“ (LF). У Јуникс текстуалним датотекама преламање реда
|
||
је један знак: „Line Feed“ (LF). У Мек текстуалним датотекама, пре Мек
|
||
ОС Икс-а, преламање реда беше један знак „Carriage Return“ (CR). Данас
|
||
Мек ОС користи преламање реда у Јуникс стилу (LF).
|
||
|
||
Поред преламања реда „dos2unix“ такође може претворити кодирање
|
||
датотека. Неколико ДОС кодних страница се може претворити у Јуникс
|
||
Latin-1. А Виндоуз Јуникод (UTF-16) датотеке се могу претворити у Јуникс
|
||
Јуникод (UTF-8) датотеке.
|
||
|
||
Бинарне датотеке се аутоматски прескачу, осим ако претварање није
|
||
приморано.
|
||
|
||
Нередовне датотеке, као што су директоријуму и ПУПИ, се аутоматски
|
||
прескачу.
|
||
|
||
Симболичке везе и њихови циљеви се подразумевано не дирају. Симболичке
|
||
везе се по жељи могу заменити, или се излаз може записати на мету
|
||
симболичке везе. Писање на мету симболичке везе није подржано на
|
||
Виндоузу.
|
||
|
||
„dos2unix“ је направљен по узору на „dos2unix“ под СанОС/Соларисом.
|
||
Постоји једна важна разлика са изворним СанОС/Соларис издањем. Ово
|
||
издање подразумевано врши претварање у месту (стари режим датотеке), док
|
||
изворно СанОС/Соларис издање подржава само упарено претварање (нови
|
||
режим датотеке). Такође погледајте опције „"-o"“ и „"-n"“. Друга разлика
|
||
је у томе што издање СанОС/Солариса подразумевано користи режим „*iso*“
|
||
претварања док ово издање подразумевано користи режим „*ascii*“
|
||
претварања.
|
||
|
||
ОПЦИЈЕ
|
||
-- Сматра све следеће опције као називе датотека. Користите ову опцију
|
||
ако желите да претворите датотеке чији називи почињу цртицом. На
|
||
пример да претворите датотеку под називом „-foo“, можете користити
|
||
ову наредбу:
|
||
|
||
dos2unix -- -foo
|
||
|
||
Или у режим нове датотеке:
|
||
|
||
dos2unix -n -- -foo излаз.txt
|
||
|
||
--allow-chown
|
||
Сва власништва датотеке се мењају у режим старе датотеке.
|
||
|
||
Када се користи ова опција, претварање се неће прекинути када се
|
||
власништво корисника и/или групе изворне датотеке не може сачувати у
|
||
старом режиму датотеке. Претварање ће се наставити и претворена
|
||
датотека ће добити исто ново власништво као да је претворена у
|
||
режиму нове датотеке. Такође погледајте опције „"-o"“ и „"-n"“. Ова
|
||
опција је доступна само ако „dos2unix“ има подршку за очување
|
||
власништва корисника и групе над датотекама.
|
||
|
||
-ascii
|
||
Основни режим претварања. Видите такође одељак РЕЖИМИ ПРЕТВАРАЊА.
|
||
|
||
-iso
|
||
Претварање између ДОС и ИСО-8859-1 скупа знакова. Видите такође
|
||
одељак РЕЖИМИ ПРЕТВАРАЊА.
|
||
|
||
-1252
|
||
Користи Виндоуз кодну страницу 1252 (западноевропски).
|
||
|
||
-437
|
||
Користи ДОС кодну страницу 437 (Сједињене Државе). Ово је основна
|
||
кодна страница коришћена за ИСО претварање.
|
||
|
||
-850
|
||
Користи ДОС кодну страницу 850 (западноевропски).
|
||
|
||
-860
|
||
Користи ДОС кодну страницу 860 (португалски).
|
||
|
||
-863
|
||
Користи ДОС кодну страницу 863 (француски канадски).
|
||
|
||
-865
|
||
Користи ДОС кодну страницу 865 (нордијски).
|
||
|
||
-7 Претвара 8 битне знакове у 7 битне размаке.
|
||
|
||
-b, --keep-bom
|
||
Задржава Ознаку редоследа бајта (BOM). Када улазна датотека има ОРБ,
|
||
пише ОРБ у излазну датотеку. Ово је основно понашање приликом
|
||
претварања у ДОС преламање реда. Видите такође опцију „"-r"“.
|
||
|
||
-c, --convmode РЕЖИМ_ПРЕТВАРАЊА
|
||
Поставља режим претварања. Где је РЕЖИМ_ПРЕТВАРАЊА један од:
|
||
*ascii*, *7bit*, *iso*, *mac* где је „ascii“ основни.
|
||
|
||
-D, --display-enc КОДИРАЊЕ
|
||
Поставља кодирање приказаног текста. Где је КОДИРАЊЕ једно од:
|
||
*ansi*, *unicode*, *unicodebom*, *utf8*, *utf8bom* где је „ansi“
|
||
основно.
|
||
|
||
Ова опција је доступна само у „dos2unix“ за Виндоуз са подршком за
|
||
Јуникод назив датотеке. Ова опција нема утицаја на стварно читање и
|
||
писање назива датотека, већ само на начин на који се приказују.
|
||
|
||
Постоји неколико метода за приказивање текста у Виндоуз конзоли на
|
||
основу кодирања текста. Сви они имају своје предности и недостатке.
|
||
|
||
ansi
|
||
Подразумевани метод „dos2unix“-а је да се користи АНСИ кодиран
|
||
текст. Предност је у томе што је повратно сагласан. Ради са
|
||
растерским и „TrueType“ словима. У неким регионима ћете можда
|
||
морати да промените активну ДОС ОЕМ кодну страницу у АНСИ кодну
|
||
страницу Виндоуз система помоћу наредбе „"chcp"“, јер „dos2unix“
|
||
користи кодну страницу Виндоуз система.
|
||
|
||
Недостатак анси-ја је што се међународни називи датотека са
|
||
знаковима који нису унутар системски подразумеване кодне
|
||
странице не приказују правилно. Уместо тога видећете знак
|
||
питања, или погрешан симбол. Када не радите са страним називима
|
||
датотека, овај метод је у реду.
|
||
|
||
unicode, unicodebom
|
||
Предност јуникод кодирања (Виндоуз назив за УТФ-16) је у томе
|
||
што се текст обично правилно приказује. Нема потребе за променом
|
||
активне кодне странице. Можда ћете морати да поставите слова
|
||
конзоле на „TrueType“ да би се међународни знаци правилно
|
||
приказивали. Када знак није укључен у „TrueType“ слова обично
|
||
видите мали квадрат, понекад са знаком питања у њему.
|
||
|
||
Када користите „ConEmu“ конзолу сав текст се исправно приказује,
|
||
јер „ConEmu“ аутоматски бира добра слова.
|
||
|
||
Недостатак јуникод-а је што није сагласан са АСКРИ-јем. Излазом
|
||
није лако руковати када га преусмерите на други програм.
|
||
|
||
Када се користи „"unicodebom"“ метод Јуникод тексту ће
|
||
претходити ОРБ (Ознака редоследа вбајтоа). ОРБ је потребан за
|
||
правилно преусмеравање или преспајање у „PowerShell“-у.
|
||
|
||
utf8, utf8bom
|
||
Предност утф8 је у томе што је сагласан са АСКРИ-јем. Слова
|
||
конзоле треба да поставити на „TrueType“ слова. Са „TrueType“
|
||
словима текст се приказује слично као и са „"unicode"“
|
||
кодирањем.
|
||
|
||
Недостатак је што се приликом коришћења подразумеваних
|
||
растерских слова сви не-АСКРИ знакови се погрешно приказују. Не
|
||
само да Јуникод називи датотека, већ и преведене поруке постају
|
||
нечитљиве. У Виндоузу подешеном за регију Источне Азије, можда
|
||
ћете видети пуно треперења конзоле приликом приказивања порука.
|
||
|
||
У „ConEmu“ конзоли утф8 метода кодирања ради лепо.
|
||
|
||
Када се користи „"utf8bom"“ метод УТФ-8 тексту ће претходити ОРБ
|
||
(Ознака редоследа вбајтоа). ОРБ је потребна за правилно
|
||
преусмеравање или преспајање у „PowerShell“-у.
|
||
|
||
Подразумевано кодирање можете изменити променљивом окружења
|
||
„DOS2UNIX_DISPLAY_ENC“ тако што ћете је поставити на „"unicode"“,
|
||
„"unicodebom"“, „"utf8"“, или „"utf8bom"“.
|
||
|
||
-e, --add-eol
|
||
Додаје прекид реда у последњи ред ако га нема. Ово ради за сва
|
||
претварања.
|
||
|
||
Датотеци претвореној из ДОС у Јуникс формат може да недостаје прекид
|
||
реда у последњем реду. Постоје уређивачи текста који пишу текстуалне
|
||
датотеке без прекида реда у последњем реду. Неки Јуникс програми
|
||
имају проблема са обрадом тих датотека, јер POSIX стандард одређује
|
||
да сваки ред у текстуалној датотеци мора да се завршава крајњим
|
||
знаком новог реда. Јер надовезане датотеке неће давати очекивани
|
||
резултат.
|
||
|
||
--error-binary
|
||
Враћа грешку ако је бинарна датотека прескочена.
|
||
|
||
-f, --force
|
||
Присиљава претварање бинарних датотека.
|
||
|
||
-gb, --gb18030
|
||
У Виндоузу УТФ-16 датотеке се подразумевано претварају у УТФ-8, без
|
||
обзира на поставке језика. Користите ову опцију за претварање УТФ-16
|
||
датотека у „GB18030“. Ова опција је доступна само у Виндоузу. Такође
|
||
погледајте одељак „GB18030“.
|
||
|
||
-h, --help
|
||
Приказује помоћ и излази.
|
||
|
||
-i[ЗАСТАВИЦЕ], --info[=ЗАСТАВИЦЕ] ДАТОТЕКА ...
|
||
Приказује податке о датотеци. Претварање се не ради.
|
||
|
||
Следеће информације се исписују, овим редом: број ДОС прелома реда,
|
||
број Јуникс прелома реда, број Мек прелома реда, ознака редоследа
|
||
бајтова, текст или бинарна, назив датотеке.
|
||
|
||
Пример излаза:
|
||
|
||
6 0 0 no_bom текст dos.txt
|
||
0 6 0 no_bom текст unix.txt
|
||
0 0 6 no_bom текст mac.txt
|
||
6 6 6 no_bom текст mixed.txt
|
||
50 0 0 UTF-16LE текст utf16le.txt
|
||
0 50 0 no_bom текст utf8unix.txt
|
||
50 0 0 UTF-8 текст utf8dos.txt
|
||
2 418 219 no_bom бинарна dos2unix.exe
|
||
|
||
Знајте да понекад бинарна датотека може грешком бити узета за
|
||
текстуалну датотеку. Видите такође опцију „"-s"“.
|
||
|
||
Ако се у додатној опцији користи "-e" или "--add-eol" такође се
|
||
исписује и врста прекида реда последњег реда, или "noeol" ако нема
|
||
ничега.
|
||
|
||
Пример излаза:
|
||
|
||
6 0 0 no_bom текст dos dos.txt
|
||
0 6 0 no_bom текст unix unix.txt
|
||
0 0 6 no_bom текст mac mac.txt
|
||
1 0 0 no_bom текст noeol noeol_dos.txt
|
||
|
||
Изборне додатне заставице се могу поставити да измене излаз. Могу се
|
||
додати једна или више заставица.
|
||
|
||
0 Исписује редове информација о датотеци за којима следи нулти
|
||
знак уместо знака новог реда. Ово омогућава тачно тумачење
|
||
назива датотека с размацима или наводницима када се користи
|
||
заставица „c“. Користите ову заставицу у комбинацији са
|
||
„xargs(1)“ опцијом „-0“ или „"--null"“.
|
||
|
||
d Исписује број ДОС преламања реда.
|
||
|
||
u Исписује број Јуникс преламања реда.
|
||
|
||
m Исписује број Мек преламања реда.
|
||
|
||
b Исписује ознаку редоследа бајтова.
|
||
|
||
t Исписује да ли је датотека текстуална или бинарна.
|
||
|
||
e Исписује врсту прекида реда последњег реда, или "noeol" ако га
|
||
нема.
|
||
|
||
c Исписује само датотеке које ће бити претворене.
|
||
|
||
Са заставицом „"c"“ „dos2unix“ ће исписати само датотеке које
|
||
садрже ДОС преламања реда, „unix2dos“ ће исписат само називе
|
||
датотека које имају Јуникс преламања реда.
|
||
|
||
Ако се у додатној опцији користи "-e" или "--add-eol" такође се
|
||
исписују и датотеке којима недостаје прекид реда у последњем
|
||
реду.
|
||
|
||
h Исписује заглавље.
|
||
|
||
p Приказује називе датотека без путање.
|
||
|
||
Примери:
|
||
|
||
Приказује податке за све „*.txt“ датотеке:
|
||
|
||
dos2unix -i *.txt
|
||
|
||
Приказује само број ДОС преламања реда и број Јуникс преламања реда:
|
||
|
||
dos2unix -idu *.txt
|
||
|
||
Приказује само ознаку редоследа бајтова:
|
||
|
||
dos2unix --info=b *.txt
|
||
|
||
Исписује датотеке које имају ДОС преламање реда:
|
||
|
||
dos2unix -ic *.txt
|
||
|
||
Исписује датотеке које имају Јуникс преламање реда:
|
||
|
||
unix2dos -ic *.txt
|
||
|
||
Исписује датотеке које имају ДОС преламања реда или им недостаје
|
||
прекид реда у последњем реду:
|
||
|
||
dos2unix -e -ic *.txt
|
||
|
||
Претвара само датотеке које имају ДОС преламање реда и оставља друге
|
||
датотеке нетакнутим:
|
||
|
||
dos2unix -ic0 *.txt | xargs -0 dos2unix
|
||
|
||
Налази текстуалне датотеке које имају ДОС преламање реда:
|
||
|
||
find -name '*.txt' -print0 | xargs -0 dos2unix -ic
|
||
|
||
-k, --keepdate
|
||
Задржава печат датума излазне датотеке истим као код улазне.
|
||
|
||
-L, --license
|
||
Приказује лиценцу програма.
|
||
|
||
-l, --newline
|
||
Додаје додатни нови ред.
|
||
|
||
dos2unix: Само ДОС преламања реда се мењају у два Јуникс преламања
|
||
реда. У Мек режиму само Мек преламања реда се мењају у два Јуникс
|
||
преламања реда.
|
||
|
||
unix2dos: Само Јуникс преламања реда се мењају у два ДОС преламања
|
||
реда. У Мек режиму Јуникс преламања реда се мењају у два Мек
|
||
преламања реда.
|
||
|
||
-m, --add-bom
|
||
Пише Ознаку редоследа бајтова (BOM) у излазну датотеку.
|
||
Подразумевано се записује УТФ-8 ОРБ.
|
||
|
||
Када је улазна датотека УТФ-16, и користи се опција „"-u"“, биће
|
||
записана УТФ-16 ОРБ.
|
||
|
||
Никада не користите ову опцију када је излазно кодирање другачије од
|
||
„UTF-8“, „UTF-16“, или „GB18030“. Видите такође одељак ЈУНИКОД.
|
||
|
||
-n, --newfile УЛАЗНА_ДАТОТЕКА ИЗЛАЗНА_ДАТОТЕКА ...
|
||
Нови режим датотеке. Претвара датотеку УЛ_ДАТОТЕКА и пише излаз у
|
||
датотеку ИЗЛ_ДАТОТЕКА. Називи датотека морају бити дати у паровима и
|
||
називи џокера се „*не*“ могу користити или „*ћете*“ изгубити своје
|
||
датотеке.
|
||
|
||
Особа која започне претварање у режиму нове (упарене) датотеке биће
|
||
власник претворене датотеке. Овлашћења за читање/писање нове
|
||
датотеке биће овлашћење изворне датотеке мање „umask(1)“ особе која
|
||
покреће претварање.
|
||
|
||
--no-allow-chown
|
||
Не дозвољава да се власништва датотеке промене у режиму старе
|
||
датотеке.
|
||
|
||
Прекида претварање када власништво корисника и/или групе изворне
|
||
датотеке не може бити очувано у старом режиму датотеке. Такође
|
||
видите опције „"-o"“ и „"-n"“. Ова опција је доступна само ако
|
||
„dos2unix“ има подршку за очување власништва корисника и група над
|
||
датотекама.
|
||
|
||
--no-add-eol
|
||
Не додаје прекид реда у последњи ред ако га нема (основно).
|
||
|
||
--no-error-binary
|
||
Не враћа грешку ако је бинарна датотека прескочена (основно).
|
||
|
||
-O, --to-stdout
|
||
Пише на стандардни излаз, као Јуникс филтер. Користите опцију „-o“
|
||
да се вратите на режим старе датотеке (одмах).
|
||
|
||
Заједно са опцијом „-e“ датотеке се могу исправно надовезати. Нема
|
||
стопљеног првог и последњег реда, и нема ознаке поретка Јуникод
|
||
бајта по средини надовезане датотеке. Пример:
|
||
|
||
dos2unix -e -O дттка1.txt дттка2.txt > излаз.txt
|
||
|
||
-o, --oldfile ДАТОТЕКА ...
|
||
Режим старе датотеке. Претвара датотеку ДАТОТЕКА и преписује излаз у
|
||
њу. Програм подразумевано ради у овом режиму. Џокери назива се могу
|
||
користити.
|
||
|
||
У режиму старе датотеке (у месту) претворена датотека добија иста
|
||
овлашћења власника, групе и читања/писања као и изворна датотека.
|
||
Такође када датотеку претвори други корисник који има овлашћење
|
||
писања над датотеком (нпр. корисник администратор). Претварање ће се
|
||
прекинути када не буде било могуће очувати изворне вредности.
|
||
Промена власника може значити да првобитни власник више не може да
|
||
чита датотеку. Промена групе може представљати безбедносни ризик,
|
||
датотека може постати читљива од стране особа којима није намењена.
|
||
Очување овлашћења власника, групе и читања/писања подржано је само
|
||
на Јуниксу.
|
||
|
||
Да проверите да ли „dos2unix“ има подршку очувања власништва
|
||
корисника и групе над датотеком упишите „"dos2unix -V"“.
|
||
|
||
Претварање се увек врши путем привремене датотеке. Када се на пола
|
||
претварања догоди грешка, привремена датотека се брише а изворна
|
||
датотека остаје нетакнута. Када претварање успе, изворна датотека се
|
||
замењује привременом датотеком. Можете имати дозволу за писање над
|
||
изворном датотеком, али немате дозволу да ставите иста својстава
|
||
овлашћења корисника и/или груп у привремену датотеку као што има и
|
||
изворна датотека. То значи да нисте у могућности да сачувате
|
||
власништво корисника и/или групе над изворном датотеком. У овом
|
||
случају можете користити опцију „"--allow-chown"“ да наставите са
|
||
претварањем:
|
||
|
||
dos2unix --allow-chown foo.txt
|
||
|
||
Друга могућност је да користи режим нове датотеке:
|
||
|
||
dos2unix -n foo.txt foo.txt
|
||
|
||
Предност опције „"--allow-chown"“ је да можете користити џокере, а
|
||
својства власништва биће очувана када је могуће.
|
||
|
||
-q, --quiet
|
||
Тихи режим. Потискује сва упозорења и поруке. Резултантна вредност
|
||
је нула. Осим када се користе погрешне опције линије наредби.
|
||
|
||
-r, --remove-bom
|
||
Уклања Ознаку редоследа бајтова (BOM). Не пише ОРБ у излазну
|
||
датотеку. Ово је основно понашање приликом претварања у Јуникс
|
||
преламање реда. Видите такође опцију „"-b"“.
|
||
|
||
-s, --safe
|
||
Прескаче извршне датотеке (основно).
|
||
|
||
Прескакање бинарних датотека врши се како би се избегле случајне
|
||
грешке. Имајте на уму да откривање бинарних датотека није 100%
|
||
поуздано. У улазним датотекама се траже бинарни симболи који се
|
||
обично не налазе у текстуалним датотекама. Могуће је да бинарна
|
||
датотека садржи само обичне текстуалне знакове. Таква бинарна
|
||
датотека ће се погрешно сматрати текстуалном датотеком.
|
||
|
||
По основи, никаква грешка се не враћа када је бинарна датотека
|
||
прескочена. Када се користи опција "--error-binary", враћа се
|
||
грешка.
|
||
|
||
-u, --keep-utf16
|
||
Keep the original UTF-16 encoding of the input file. The output file
|
||
will be written in the same UTF-16 encoding, little- or big-endian,
|
||
as the input file. This prevents transformation to UTF-8. An UTF-16
|
||
BOM will be written accordingly. This option can be disabled with
|
||
the "-ascii" option.
|
||
|
||
-ul, --assume-utf16le
|
||
Подразумева да је формат улазне датотеке „UTF-16LE“.
|
||
|
||
Када постоји Ознака редоследа бајтова у улазној датотеци ОРБ има
|
||
предност над овом опцијом.
|
||
|
||
Када сте погрешно претпоставили (улазна датотека није била у
|
||
УТФ-16ЛЕ формату) а претварање је успело, добићете УТФ-8 излазну
|
||
датотеку са погрешним текстом. Погрешно претварање можете да
|
||
опозовете помоћу „iconv(1)“ претварањем УТФ-8 излазне датотеке назад
|
||
у УТФ-16ЛЕ. Ово ће вратити изворну датотеку.
|
||
|
||
Претпоставка УТФ-16ЛЕ ради као „*conversion mode*“. Пребацивањем на
|
||
основни „*ascii*“ режим УТФ-16ЛЕ претпоставка се искључује.
|
||
|
||
-ub, --assume-utf16be
|
||
Подразумева да је формат улазне датотеке „UTF-16BE“.
|
||
|
||
Ова опција ради исто као и опција „"-ul"“.
|
||
|
||
-v, --verbose
|
||
Приказује опширне поруке. Додатне информације се приказују о Ознаци
|
||
редоследа бајтова и количини претворених преламања реда.
|
||
|
||
-F, --follow-symlink
|
||
Прати симболичке везе и претвара циљеве.
|
||
|
||
-R, --replace-symlink
|
||
Замењује симболичке везе претвореним датотекама (изворне циљне
|
||
датотеке остају непромењене).
|
||
|
||
-S, --skip-symlink
|
||
Задржава неизмењеним симболичке везе и циљеве (основно).
|
||
|
||
-V, --version
|
||
Приказује податке о издању и излази.
|
||
|
||
МЕК РЕЖИМ
|
||
По основи преламања реда се претварају из DOS-а у Unix и обратно.
|
||
Mac-ова преламања реда се не претварају.
|
||
|
||
У Мек режиму преламања реда се претварју из Мек-а у Јуникс и обратно.
|
||
ДОС преламања реда се не мењају.
|
||
|
||
Да покренете у Мек режиму користите опцију „"-c mac"“ или користите
|
||
наредбе „"mac2unix"“ или „"unix2mac"“.
|
||
|
||
РЕЖИМИ ПРЕТВАРАЊА
|
||
ascii
|
||
Ово је основни режим претварања. Овај режим је за претварање ASCII и
|
||
ASCII-сагласних кодираних датотека, као UTF-8. Укључивање ascii
|
||
режима искључује 7bit и iso.
|
||
|
||
Ако dos2unix има UTF-16 подршку, UTF-16 кодиране датотеке се
|
||
претварају у кодирање знакова текућег језика на POSIX системима и у
|
||
UTF-8 на Виндоузу. Укључивањем ascii режима искључује се опција за
|
||
задржавање UTF-16 кодирања ("-u") и опције за прихват UTF-16 улаза
|
||
("-ul" и "-ub"). Да видите да ли dos2unix има UTF-16 подршку
|
||
укуцајте "dos2unix -V". Видите такође одељак UNICODE.
|
||
|
||
7bit
|
||
У овом режиму сви 8 битни не-АСКРИ знаци (са вредностима од 128 до
|
||
255) се претварају у 7 битне размаке.
|
||
|
||
iso Знакови се претварају између ДОС скупа знакова (кодна страница) и
|
||
ИСО скупа знакова ИСО-8859-1 (Latin-1) на Јуниксу. ДОС знакови без
|
||
ИСО-8859-1 еквивалента, за које претварање није могуће, претварају
|
||
се у тачку. Исто се рачуна и за ИСО-8859-1 знакове без ДОС-а.
|
||
|
||
Када се користи само опција „"-iso"“, „dos2unix“ ће покушати да
|
||
одреди активну кодну страницу. Када то није могуће, „dos2unix“ ће
|
||
користити подразумевану кодну страницу ЦП437, која се углавном
|
||
користи у САД-у. Да бисте приморали одређену кодну страницу,
|
||
користите опције „-437“ (САД), „-850“ (западноевропски), „-860“
|
||
(португалски), „-863“ (француски канадски) или „-865“ (нордијски).
|
||
Виндоуз кодна страница ЦП1252 (западноевропски) је такође подржана
|
||
опцијом „-1252“. За остале кодне странице користите „dos2unix“ у
|
||
комбинацији са „iconv(1)“. Иконв може да претвара између дугог
|
||
списка кодирања знакова.
|
||
|
||
Никада не користите ИСО претварање над Јуникод текстуалним
|
||
датотекама. Оштетиће УТФ-8 кодиране датотеке.
|
||
|
||
Неки примери:
|
||
|
||
Претворите из ДОС основне кодне странице у Јуникс Latin-1:
|
||
|
||
dos2unix -iso -n улаз.txt излаз.txt
|
||
|
||
Претворите из ДОС CP850 у Јуникс Latin-1:
|
||
|
||
dos2unix -850 -n улаз.txt излаз.txt
|
||
|
||
Претворите из Виндоуз CP1252 у Јуникс Latin-1:
|
||
|
||
dos2unix -1252 -n улаз.txt излаз.txt
|
||
|
||
Претворите из Виндоуз CP1252 у Јуникс УТФ-8 (Јуникод):
|
||
|
||
iconv -f CP1252 -t UTF-8 улаз.txt | dos2unix > излаз.txt
|
||
|
||
Претворите из Јуникс Latin-1 у ДОС основну кодну страницу:
|
||
|
||
unix2dos -iso -n улаз.txt излаз.txt
|
||
|
||
Претворите из Јуникс Latin-1 у ДОС CP850:
|
||
|
||
unix2dos -850 -n улаз.txt излаз.txt
|
||
|
||
Претворите из Јуникс Latin-1 у Вондоуз CP1252:
|
||
|
||
unix2dos -1252 -n улаз.txt излаз.txt
|
||
|
||
Претворите из Јуникс УТФ-8 (Јуникод) у Вондоуз CP1252:
|
||
|
||
unix2dos < улаз.txt | iconv -f UTF-8 -t CP1252 > излаз.txt
|
||
|
||
See also <https://czyborra.com/charsets/codepages.html> and
|
||
<https://czyborra.com/charsets/iso8859.html>.
|
||
|
||
УНИКОД
|
||
Кодирања
|
||
There exist different Unicode encodings. On Unix and Linux Unicode files
|
||
are typically encoded in UTF-8 encoding. On Windows Unicode text files
|
||
can be encoded in UTF-8, UTF-16, or UTF-16 big-endian, but are mostly
|
||
encoded in UTF-16 format.
|
||
|
||
Претварање
|
||
Јуникод текстуалне датотеке могу имати DOS, Unix или Mac преломе реда,
|
||
као ASCII текстуалне датотеке.
|
||
|
||
Сва издања „dos2unix“-а и „unix2do“-а могу претворити УТФ-8 кодиране
|
||
датотеке, јер је УТФ-8 дизајниран за повратну сагласност са АСКРИ-ијем.
|
||
|
||
dos2unix and unix2dos with Unicode UTF-16 support, can read little- and
|
||
big-endian UTF-16 encoded text files. To see if dos2unix was built with
|
||
UTF-16 support type "dos2unix -V".
|
||
|
||
На Јуниксу/Линуксу УТФ-16 кодиране датотеке се претварају у локално
|
||
кодирање знакова. Користите наредбу „locale(1)“ да сазнате које је
|
||
кодирање знакова локализације. Када претварање није могуће, десиће се
|
||
грешка претварања а датотека ће бити прескочена.
|
||
|
||
На Виндоузу УТФ-16 датотеке се подразумевано претварају у УТФ-8. УТФ-8
|
||
форматиране текстуалне датотеке су добро подржане и на Виндоузу и на
|
||
Јуникс/Линуксу.
|
||
|
||
УТФ-16 и УТФ-8 кодирања су у потпуности сагласна, у претварању се неће
|
||
изгубити никакав текст. Када се догоди грешка претварања УТФ-16 у УТФ-8,
|
||
на пример када улазна УТФ-16 датотека садржи грешку, датотека ће бити
|
||
прескочена.
|
||
|
||
Када се користи опција „"-u"“, излазна датотека ће бити записана у истом
|
||
УТФ-16 кодирању као и улазна датотека. Опција „"-u"“ спречава претварање
|
||
у УТФ-8.
|
||
|
||
„dos2unix“ и „unix2dos“ немају могућности да претворе УТФ-8 датотеке у
|
||
УТФ-16.
|
||
|
||
ИСО и 7-битни режим претварања не ради на УТФ-16 датотекама.
|
||
|
||
Ознака редоследа бајтова
|
||
На Виндоузу Јуникод текстуалне датотеке обично имају Ознаку редоследа
|
||
бајтова (BOM), јер многи Виндоуз програми (укључујући Бележницу)
|
||
подразумевано додају ОРБ. Видите такође
|
||
<https://en.wikipedia.org/wiki/Byte_order_mark>.
|
||
|
||
На Јуниксу Јуникод датотеке обично немају ОРБ. Претпоставља се да су
|
||
текстуалне датотеке кодиране у језичком кодирању знака.
|
||
|
||
„dos2unix“ може открити само да ли је датотека у УТФ-16 формату и да ли
|
||
датотека има ОРБ. Када УТФ-16 датотека нема ОРБ, „dos2unix“ ће видети
|
||
датотеку као бинарну.
|
||
|
||
Користите опцију „"-ul"“ или „"-ub"“ да претворите УТФ-16 датотеку без
|
||
ОРБ-а.
|
||
|
||
„dos2unix“ подразумевано не записује ОРБ у излазну датотеку. Са опцијом
|
||
„"-b"“ „dos2unix записује ОРБ када улазна датотека има ОРБ.
|
||
|
||
„unix2dos“ подразумевано записује ОРБ у излазну датотеку када улазна
|
||
датотека има ОРБ. Користите опцију „"-r"“ да уклоните ОРБ.
|
||
|
||
„dos2unix“ и „unix2dos“ увек записује ОРБ када се користи „"-m"“ опција.
|
||
|
||
Јуникод називи датотека на Виндоузу
|
||
„dos2unix“ има изборну подршку за читање и писање Јуникод назива
|
||
датотека у Виндоуз командној линији. То значи да „dos2unix“ може
|
||
отворити датотеке које у називу имају знакове који нису део
|
||
подразумеване системске АНСИ кодне странице. Да бисте видели да ли је
|
||
„dos2unix“ за Виндоуз изграђен са подршком Јуникод назива датотеке
|
||
упишите „"dos2unix -V"“.
|
||
|
||
Постоје проблеми са приказом Јуникод назива датотека у Виндоуз конзоли.
|
||
Видите опцију „"-D"“, „"--display-enc"“. Називи датотека могу бити
|
||
погрешно приказани у конзоли, али ће датотеке бити записане под тачним
|
||
називом.
|
||
|
||
Примери Уникода
|
||
Претвара из Виндоуз УТФ-16 (са ОРБ-ом) у Јуникс УТФ-8:
|
||
|
||
dos2unix -n улаз.txt излаз.txt
|
||
|
||
Претвара из Виндоуз УТФ-16ЛЕ (без ОРБ-а) у Јуникс УТФ-8:
|
||
|
||
dos2unix -ul -n улаз.txt излаз.txt
|
||
|
||
Претворите из Јуникс УТФ-8 у Вондоуз УТФ-8 са ОРБ-ом:
|
||
|
||
unix2dos -m -n улаз.txt излаз.txt
|
||
|
||
Претворите из Јуникс УТФ-8 у Вондоуз УТФ-16:
|
||
|
||
unix2dos < улаз.txt | iconv -f UTF-8 -t UTF-16 > излаз.txt
|
||
|
||
GB18030
|
||
GB18030 је стандард кинеске владе. Обавезни подскуп GB18030 стандарда се
|
||
званично захтева за све софтверске производе продате у Кини. Видите
|
||
такође <http://en.wikipedia.org/wiki/GB_18030>.
|
||
|
||
„GB18030“ је у потпуности сагласан са Јуникод-ом, и може се сматрати
|
||
Јуникод форматом преображаја. Као УТФ-8, „GB18030“ је сагласан са АСКРИ.
|
||
„GB18030“ је такође сагласан са Виндоуз кодном страницом 936, познатом и
|
||
као ГБК.
|
||
|
||
На Јуниксу/Линуксу УТФ-16 датотеке се претварају у „GB18030“ када је
|
||
језичко кодирање постављено на „GB18030“. Знајте да ће ово радити само
|
||
ако је језик подржан системом. Користите наредбу „"locale -a"“ да
|
||
добавите списак подржаних језика.
|
||
|
||
На Виндоузу треба да користите опцију „"-gb"“ да преведете УТФ-16
|
||
датотеке у „GB18030“.
|
||
|
||
„GB18030“ кодиране датотеке могу имати Ознаку редоследа бајтова, као
|
||
Јуникод датотеке.
|
||
|
||
ПРИМЕРИ
|
||
Чита улаз са „стнд_улаза“ и пише излаз на „стнд_излаз“:
|
||
|
||
dos2unix < а.txt
|
||
cat а.txt | dos2unix
|
||
|
||
Претвара и замењује „а.txt“. Претвара и замењује „б.txt“:
|
||
|
||
dos2unix а.txt б.txt
|
||
dos2unix -o а.txt б.txt
|
||
|
||
Претвара и замењује „а.txt“ у аскри режиму претварања:
|
||
|
||
dos2unix а.txt
|
||
|
||
Претвара и замењује „а.txt“ у аскри режиму претварања, Претвара и
|
||
замењује „б.txt“ у 7битном режиму претварања:
|
||
|
||
dos2unix а.txt -c 7bit б.txt
|
||
dos2unix -c ascii а.txt -c 7bit б.txt
|
||
dos2unix -ascii а.txt -7 б.txt
|
||
|
||
Претвара „а.txt“ из Мек у Јуникс формат:
|
||
|
||
dos2unix -c mac а.txt
|
||
mac2unix а.txt
|
||
|
||
Претвара „а.txt“ из Јуникс у Мек формат:
|
||
|
||
unix2dos -c mac а.txt
|
||
unix2mac а.txt
|
||
|
||
Претвара и замењује „а.txt“ док задржава изворни печат датума:
|
||
|
||
dos2unix -k а.txt
|
||
dos2unix -k -o а.txt
|
||
|
||
Претвара „а.txt“ и пише на „е.txt“:
|
||
|
||
dos2unix -n а.txt е.txt
|
||
|
||
Претвара „а.txt“ и пише на „е.txt“, задржава печат датума „е.txt“-а
|
||
истим као „а.txt“:
|
||
|
||
dos2unix -k -n а.txt е.txt
|
||
|
||
Претвара и замењује „а.txt“, претвара „б.txt“ и пише на „.txt“:
|
||
|
||
dos2unix а.txt -n б.txt е.txt
|
||
dos2unix -o а.txt -n б.txt е.txt
|
||
|
||
Претвара „ц.txt“ и пише на „е.txt“, претвара и замењује„а.txt“, претвара
|
||
и замењује „б.txt“, претвара „д.txt“ и пише у „ф.txt“:
|
||
|
||
dos2unix -n ц.txt е.txt -o а.txt б.txt -n д.txt ф.txt
|
||
|
||
ДУБИНСКО ПРЕТВАРАЊЕ
|
||
У Јуникс шкољци наредбе „find(1)“ и „xargs(1)“ се могу користити за
|
||
покретање „dos2unix“-а дубински преко свих текстуалних датотека у стаблу
|
||
директоријума. На пример за претварање свих „.txt“ датотека у стаблу
|
||
директоријума под текућим директоријумом упишите:
|
||
|
||
find . -name '*.txt' -print0 |xargs -0 dos2unix
|
||
|
||
„find(1)“-ова опција „"-print0"“ и одговарајућа „xargs(1)“-ова опција
|
||
„-0“ су потребне када постоје датотеке са размацима и наводницима у
|
||
називима. У супротном се ове опције могу изоставити. Друга могућност је
|
||
да користите „find(1)“ са „"-exec"“ опцијом:
|
||
|
||
find . -name '*.txt' -exec dos2unix {} \;
|
||
|
||
У Виндоуз командном упиту следеће наредбе се могу користити:
|
||
|
||
for /R %G in (*.txt) do dos2unix "%G"
|
||
|
||
Корисници „PowerShell“-а могу користити следеће наредбе у Виндоуз
|
||
„PowerShell“-у:
|
||
|
||
get-childitem -path . -filter '*.txt' -recurse | foreach-object {dos2unix $_.Fullname}
|
||
|
||
ЈЕЗИЧЕЊЕ
|
||
ЈЕЗ Примарни језик се бира променљивом окружења „LANG“. Променљива
|
||
„LANG“ се састоји из неколико делова. Први део је малим словима
|
||
језички код. Други је необавезан и представља код државе великим
|
||
словима, којем претходи доња црта. Ту је и изборни трећи део:
|
||
кодирање знакова, којем претходи тачка. Неколико примера за врсте
|
||
шкољки ПОСИКС стандарда:
|
||
|
||
export LANG=nl Холандски
|
||
export LANG=nl_NL Холандски, Низоземска
|
||
export LANG=nl_BE Холандски, Белгија
|
||
export LANG=es_ES Шпански, Шпанија
|
||
export LANG=es_MX Шпански, Мексико
|
||
export LANG=en_US.iso88591 Енглески, САД, Latin-1 кодирање
|
||
export LANG=en_GB.UTF-8 Енглески, УК, УТФ-8 кодирање
|
||
|
||
За потпун списак језика и шифара држава видите приручник геттекста:
|
||
<https://www.gnu.org/software/gettext/manual/html_node/Usual-Languag
|
||
e-Codes.html>
|
||
|
||
На Јуникс системима можете користити наредбу „locale(1)“ да видите
|
||
особене податке језика.
|
||
|
||
ЈЕЗИК
|
||
Са променљивом окружења ЈЕЗИК можете навести списак хитности језика,
|
||
раздвојених двотачком. „dos2unix“ даје предност за ЈЕЗИК над ЈЕЗ. На
|
||
пример, прво холандски а затим немачки: "LANGUAGE=nl:de". Прво треба
|
||
да омогућите преводе, постављајући „LANG“ (или LC_ALL) на вредност
|
||
другачију од „C“, пре него ли будете могли да користите списак
|
||
хитности језика променљивом „LANGUAGE“. Видите такође приручник
|
||
геттекста:
|
||
<https://www.gnu.org/software/gettext/manual/html_node/The-LANGUAGE-
|
||
variable.html>
|
||
|
||
Ако изаберете језик који није доступан добићете стандардне поруке на
|
||
енглеском.
|
||
|
||
DOS2UNIX_LOCALEDIR
|
||
Са променљивом окружења „DOS2UNIX_LOCALEDIR“ „LOCALEDIR“ поставка у
|
||
време компилације се може поништити. „LOCALEDIR“ се користи за
|
||
налажење датотека језика. ГНУ-ова основна вредност је
|
||
„"/usr/local/share/locale"“. Опција „--version“ ће приказати
|
||
„LOCALEDIR“ који се користи.
|
||
|
||
Пример (ПОСИКС љуска):
|
||
|
||
export DOS2UNIX_LOCALEDIR=$HOME/share/locale
|
||
|
||
РЕЗУЛТНА ВРЕДНОСТ
|
||
На успех, резултат је нула. Када има системских грешака резултат је
|
||
последња грешка система. За друге грешке резултат је 1.
|
||
|
||
Вредност резултата је увек нула у тихом режиму, изузев када се користе
|
||
погрешне опције линије наредби.
|
||
|
||
СТАНДАРДИ
|
||
<https://en.wikipedia.org/wiki/Text_file>
|
||
|
||
<https://en.wikipedia.org/wiki/Carriage_return>
|
||
|
||
<https://en.wikipedia.org/wiki/Newline>
|
||
|
||
<https://en.wikipedia.org/wiki/Unicode>
|
||
|
||
АУТОРИ
|
||
Бенџамин Лин – <blin@socs.uts.edu.au>, Бернд Јоханес Вебен (mac2unix) –
|
||
<wuebben@kde.org>, Кристијан Вирл (додаје додатни нови ред) –
|
||
<wurll@ira.uka.de>, Ервин Вотерландер – <waterlan@xs4all.nl>
|
||
(одржавалац)
|
||
|
||
Project page: <https://waterlander.net/dos2unix/>
|
||
|
||
Страница Ковнице извора: <https://sourceforge.net/projects/dos2unix/>
|
||
|
||
ВИДИТЕ ТАКОЂЕ
|
||
file(1) find(1) iconv(1) locale(1) xargs(1)
|
||
|