mirror of
https://github.com/FunKey-Project/RetroFE.git
synced 2026-04-28 17:09:33 +02:00
797 lines
46 KiB
Groff
797 lines
46 KiB
Groff
.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.28)
|
||
.\"
|
||
.\" Standard preamble:
|
||
.\" ========================================================================
|
||
.de Sp \" Vertical space (when we can't use .PP)
|
||
.if t .sp .5v
|
||
.if n .sp
|
||
..
|
||
.de Vb \" Begin verbatim text
|
||
.ft CW
|
||
.nf
|
||
.ne \\$1
|
||
..
|
||
.de Ve \" End verbatim text
|
||
.ft R
|
||
.fi
|
||
..
|
||
.\" Set up some character translations and predefined strings. \*(-- will
|
||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||
.\" double quote, and \*(R" will give a right double quote. \*(C+ will
|
||
.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
|
||
.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
|
||
.\" nothing in troff, for use with C<>.
|
||
.tr \(*W-
|
||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||
.ie n \{\
|
||
. ds -- \(*W-
|
||
. ds PI pi
|
||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||
. ds L" ""
|
||
. ds R" ""
|
||
. ds C` ""
|
||
. ds C' ""
|
||
'br\}
|
||
.el\{\
|
||
. ds -- \|\(em\|
|
||
. ds PI \(*p
|
||
. ds L" ``
|
||
. ds R" ''
|
||
. ds C`
|
||
. ds C'
|
||
'br\}
|
||
.\"
|
||
.\" Escape single quotes in literal strings from groff's Unicode transform.
|
||
.ie \n(.g .ds Aq \(aq
|
||
.el .ds Aq '
|
||
.\"
|
||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
|
||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||
.\" output yourself in some meaningful fashion.
|
||
.\"
|
||
.\" Avoid warning from groff about undefined register 'F'.
|
||
.de IX
|
||
..
|
||
.nr rF 0
|
||
.if \n(.g .if rF .nr rF 1
|
||
.if (\n(rF:(\n(.g==0)) \{
|
||
. if \nF \{
|
||
. de IX
|
||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||
..
|
||
. if !\nF==2 \{
|
||
. nr % 0
|
||
. nr F 2
|
||
. \}
|
||
. \}
|
||
.\}
|
||
.rr rF
|
||
.\" ========================================================================
|
||
.\"
|
||
.IX Title "dos2unix 1"
|
||
.TH dos2unix 1 "2015-02-11" "dos2unix" "2015-02-11"
|
||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||
.\" way too many mistakes in technical documents.
|
||
.if n .ad l
|
||
.nh
|
||
.SH "НАЗВА"
|
||
.IX Header "НАЗВА"
|
||
dos2unix \- програма для перетворення даних у текстовому форматі DOS/Mac у
|
||
формат Unix, і навпаки
|
||
.SH "КОРОТКИЙ ОПИС"
|
||
.IX Header "КОРОТКИЙ ОПИС"
|
||
.Vb 2
|
||
\& dos2unix [параметри] [ФАЙЛ ...] [\-n ВХІДНИЙ_ФАЙЛ ВИХІДНИЙ_ФАЙЛ ...]
|
||
\& unix2dos [параметри] [ФАЙЛ ...] [\-n ВХІДНИЙ_ФАЙЛ ВИХІДНИЙ_ФАЙЛ ...]
|
||
.Ve
|
||
.SH "ОПИС"
|
||
.IX Header "ОПИС"
|
||
До складу пакунка Dos2unix включено програми \f(CW\*(C`dos2unix\*(C'\fR та \f(CW\*(C`unix2dos\*(C'\fR,
|
||
призначені для перетворення звичайних текстових даних у форматі \s-1DOS\s0 або Mac
|
||
на дані у форматі Unix, і навпаки.
|
||
.PP
|
||
У текстових файлах DOS/Windows розрив рядка або перехід на новий рядок
|
||
здійснюється за допомогою комбінації двох символів: повернення каретки (\s-1CR\s0)
|
||
і переведення рядка (\s-1LF\s0). У текстових файлах Unix за перехід на новий рядок
|
||
відповідає один символ: переведення рядка (\s-1LF\s0). У текстових файлах Mac, до
|
||
Mac \s-1OS X,\s0 за розрив рядка відповідав один символ: повернення каретки (\s-1CR\s0). У
|
||
сучасних версіях Mac \s-1OS\s0 використовується типовий для Unix розрив рядка (\s-1LF\s0).
|
||
.PP
|
||
Окрім символів розриву рядка, програма Dos2unix здатна виконувати
|
||
перетворення кодування файлів. Можна перетворити дані у декількох кодуваннях
|
||
\&\s-1DOS\s0 на файли у кодуванні Latin\-1 Unix. Також можна перетворити дані у файлах
|
||
Windows Unicode (\s-1UTF\-16\s0) на дані у кодуванні Unix Unicode (\s-1UTF\-8\s0).
|
||
.PP
|
||
Під час перетворення програма пропускатиме двійкові файли, якщо ви не
|
||
накажете їй виконати перетворення таких файлів безпосередньо.
|
||
.PP
|
||
Програма автоматично пропускатиме файли, які не є звичайними файлами,
|
||
зокрема каталоги та канали \s-1FIFO.\s0
|
||
.PP
|
||
Типово, програма не вноситиме змін до символічних посилань та об’єктів
|
||
посилань. Якщо потрібно, програма може замінити символічні посилання або
|
||
записати перетворені дані до файла\-призначення символічного посилання. У
|
||
Windows запису до об’єкта символічного посилання не передбачено.
|
||
.PP
|
||
Програму dos2unix було створено за зразком програми dos2unix для
|
||
SunOS/Solaris. Втім, існує одна важлива відмінність від оригінальної версії
|
||
для SunOS/Solaris. Ця версія типово виконує заміну файлів під час
|
||
перетворення (старий режим обробки файлів), а у оригінальній версії для
|
||
SunOS/Solaris передбачено підтримку лише парного перетворення (новий режим
|
||
обробки файлів). Див. також параметри \f(CW\*(C`\-o\*(C'\fR та \f(CW\*(C`\-n\*(C'\fR.
|
||
.SH "ПАРАМЕТРИ"
|
||
.IX Header "ПАРАМЕТРИ"
|
||
.IP "\fB\-\-\fR" 4
|
||
.IX Item "--"
|
||
Вважати усі наступні параметри назвами файлів. Цим параметром слід
|
||
користуватися, якщо вам потрібно виконати перетворення файлів, чиї назви
|
||
містять дефіси. Наприклад, щоб виконати перетворення файла «\-foo»,
|
||
скористайтеся такою командою:
|
||
.Sp
|
||
.Vb 1
|
||
\& dos2unix \-\- \-foo
|
||
.Ve
|
||
.Sp
|
||
Або у новому режимі файлів:
|
||
.Sp
|
||
.Vb 1
|
||
\& dos2unix \-n \-\- \-foo out.txt
|
||
.Ve
|
||
.IP "\fB\-ascii\fR" 4
|
||
.IX Item "-ascii"
|
||
Виконати лише перетворення символів розриву рядків. Типовий режим
|
||
перетворення.
|
||
.IP "\fB\-iso\fR" 4
|
||
.IX Item "-iso"
|
||
Виконати перетворення з кодування \s-1DOS\s0 на кодування \s-1ISO\-8859\-1.\s0 Див. розділ
|
||
щодо режимів перетворення.
|
||
.IP "\fB\-1252\fR" 4
|
||
.IX Item "-1252"
|
||
Використати кодову таблицю 1252 Windows (західноєвропейські мови).
|
||
.IP "\fB\-437\fR" 4
|
||
.IX Item "-437"
|
||
Використовувати кодову сторінку \s-1DOS 437 \s0(США). Це типова кодова сторінка для
|
||
перетворення \s-1ISO.\s0
|
||
.IP "\fB\-850\fR" 4
|
||
.IX Item "-850"
|
||
Використовувати кодову сторінку \s-1DOS 850 \s0(західноєвропейські мови).
|
||
.IP "\fB\-860\fR" 4
|
||
.IX Item "-860"
|
||
Використовувати сторінку \s-1DOS 860 \s0(португальська).
|
||
.IP "\fB\-863\fR" 4
|
||
.IX Item "-863"
|
||
Використовувати сторінку \s-1DOS 863 \s0(канадська французька).
|
||
.IP "\fB\-865\fR" 4
|
||
.IX Item "-865"
|
||
Використовувати сторінку \s-1DOS 865 \s0(скандинавські мови).
|
||
.IP "\fB\-7\fR" 4
|
||
.IX Item "-7"
|
||
Перетворювати 8\-бітові символи на 7\-бітові.
|
||
.IP "\fB\-b, \-\-keep\-bom\fR" 4
|
||
.IX Item "-b, --keep-bom"
|
||
Зберегти позначку порядку байтів (\s-1BOM\s0). Якщо у файлі вхідних даних є \s-1BOM,\s0
|
||
записати \s-1BOM\s0 до файла результатів. Це типова поведінка під час перетворення
|
||
у формат із символами розриву рядків \s-1DOS.\s0 Див. також параметр \f(CW\*(C`\-r\*(C'\fR.
|
||
.IP "\fB\-c, \-\-convmode РЕЖИМ\fR" 4
|
||
.IX Item "-c, --convmode РЕЖИМ"
|
||
Встановити режим перетворення. Значенням аргументу РЕЖИМ може бути один з
|
||
таких рядків: \fIascii\fR, \fI7bit\fR, \fIiso\fR, \fImac\fR. Типовим є режим ascii.
|
||
.IP "\fB\-f, \-\-force\fR" 4
|
||
.IX Item "-f, --force"
|
||
Примусове перетворення двійкових файлів.
|
||
.IP "\fB\-gb, \-\-gb18030\fR" 4
|
||
.IX Item "-gb, --gb18030"
|
||
У Windows файли в \s-1UTF\-16\s0 типово перетворюються на файли в \s-1UTF\-8,\s0 незалежно
|
||
від встановленої локалі. За допомогою цього параметра ви можете наказати
|
||
програмі перетворювати файли в \s-1UTF\-16\s0 на файли у \s-1GB18030.\s0 Цим параметром
|
||
можна скористатися лише у Windows. Див. також розділ, присвячений \s-1GB18030.\s0
|
||
.IP "\fB\-h, \-\-help\fR" 4
|
||
.IX Item "-h, --help"
|
||
Показати довідкові дані і завершити роботу.
|
||
.IP "\fB\-i[ПРАПОРЦІ], \-\-info[=ПРАПОРЦІ] ФАЙЛ ...\fR" 4
|
||
.IX Item "-i[ПРАПОРЦІ], --info[=ПРАПОРЦІ] ФАЙЛ ..."
|
||
Вивести дані щодо файла. Не виконувати перетворення.
|
||
.Sp
|
||
Буде виведено такі дані, у вказаному порядку: кількість розривів рядків у
|
||
форматі \s-1DOS,\s0 кількість розривів рядків у форматі Unix, кількість розривів
|
||
рядків у форматі Mac, позначка порядку байтів, текстовим чи бінарним є файл
|
||
та назву файла.
|
||
.Sp
|
||
Приклад результатів:
|
||
.Sp
|
||
.Vb 8
|
||
\& 6 0 0 no_bom text dos.txt
|
||
\& 0 6 0 no_bom text unix.txt
|
||
\& 0 0 6 no_bom text mac.txt
|
||
\& 6 6 6 no_bom text mixed.txt
|
||
\& 50 0 0 UTF\-16LE text utf16le.txt
|
||
\& 0 50 0 no_bom text utf8unix.txt
|
||
\& 50 0 0 UTF\-8 text utf8dos.txt
|
||
\& 2 418 219 no_bom binary dos2unix.exe
|
||
.Ve
|
||
.Sp
|
||
Крім того, можна вказати додаткові прапорці для внесення змін у виведені
|
||
дані. Можна використовувати один або декілька таких прапорців.
|
||
.RS 4
|
||
.IP "\fBd\fR" 4
|
||
.IX Item "d"
|
||
Вивести кількість символів розривів рядка \s-1DOS.\s0
|
||
.IP "\fBu\fR" 4
|
||
.IX Item "u"
|
||
Вивести кількість символів розривів рядка Unix.
|
||
.IP "\fBm\fR" 4
|
||
.IX Item "m"
|
||
Вивести кількість символів розривів рядка Mac.
|
||
.IP "\fBb\fR" 4
|
||
.IX Item "b"
|
||
Вивести позначку порядку байтів.
|
||
.IP "\fBt\fR" 4
|
||
.IX Item "t"
|
||
Вивести дані щодо того, є файл текстовим чи бінарним.
|
||
.IP "\fBc\fR" 4
|
||
.IX Item "c"
|
||
Вивести дані лише тих файлів, які було б перетворено.
|
||
.Sp
|
||
Із прапорцем \f(CW\*(C`c\*(C'\fR dos2unix виведе лише назви файлів, у яких містяться
|
||
розриви рядків \s-1DOS.\s0 unix2dos виведе лише назви файлів, у яких містяться
|
||
розриви рядків Unix.
|
||
.RE
|
||
.RS 4
|
||
.Sp
|
||
Приклади:
|
||
.Sp
|
||
Вивести дані щодо усіх файлів *.txt:
|
||
.Sp
|
||
.Vb 1
|
||
\& dos2unix \-i *.txt
|
||
.Ve
|
||
.Sp
|
||
Вивести кількість розривів рядків у форматі \s-1DOS\s0 і розривів рядків у форматі
|
||
Unix:
|
||
.Sp
|
||
.Vb 1
|
||
\& dos2unix \-idu *.txt
|
||
.Ve
|
||
.Sp
|
||
Вивести лише позначку порядку байтів:
|
||
.Sp
|
||
.Vb 1
|
||
\& dos2unix \-\-info=b *.txt
|
||
.Ve
|
||
.Sp
|
||
Вивести список файлів, у яких є символи розриву рядків \s-1DOS:\s0
|
||
.Sp
|
||
.Vb 1
|
||
\& dos2unix \-ic *.txt
|
||
.Ve
|
||
.Sp
|
||
Вивести список файлів, у яких використано символи розриву рядків Unix:
|
||
.Sp
|
||
.Vb 1
|
||
\& unix2dos \-ic *.txt
|
||
.Ve
|
||
.RE
|
||
.IP "\fB\-k, \-\-keepdate\fR" 4
|
||
.IX Item "-k, --keepdate"
|
||
Зберегти часову позначку файла вхідних даних у файлі результатів
|
||
перетворення.
|
||
.IP "\fB\-L, \-\-license\fR" 4
|
||
.IX Item "-L, --license"
|
||
Вивести умови ліцензування програми.
|
||
.IP "\fB\-l, \-\-newline\fR" 4
|
||
.IX Item "-l, --newline"
|
||
Вставити додатковий символ розриву рядка.
|
||
.Sp
|
||
\&\fBdos2unix\fR: перетворення на два символи розриву рядків Unix відбуватиметься
|
||
лише для комбінацій розриву рядків \s-1DOS.\s0 У режимі Mac виконуватиметься
|
||
перетворення на два розриви рядків Unix лише символів розриву рядків Mac.
|
||
.Sp
|
||
\&\fBunix2dos\fR: перетворення на дві комбінації розриву рядків \s-1DOS\s0
|
||
відбуватиметься лише для символів розриву рядків \s-1DOS.\s0 У режимі Mac
|
||
виконуватиметься перетворення на два розриви рядків Mac лише символів
|
||
розриву рядків Unix.
|
||
.IP "\fB\-m, \-\-add\-bom\fR" 4
|
||
.IX Item "-m, --add-bom"
|
||
Записати до файла результатів позначку порядку байтів (\s-1BOM\s0). Типово буде
|
||
записано позначку порядку байтів \s-1UTF\-8.\s0
|
||
.Sp
|
||
Якщо дані початкового файла закодовано у \s-1UTF\-16\s0 і використано параметр
|
||
\&\f(CW\*(C`\-u\*(C'\fR, буде дописано позначку порядку байтів \s-1UTF\-16.\s0
|
||
.Sp
|
||
Не використовуйте цей параметр для кодувань результатів, відмінних від \s-1UTF\-8\s0
|
||
або \s-1UTF\-16.\s0 Див. також розділ щодо \s-1UNICODE.\s0
|
||
.IP "\fB\-n, \-\-newfile ВХІДНИЙ_ФАЙЛ ВИХІДНИЙ_ФАЙЛ ...\fR" 4
|
||
.IX Item "-n, --newfile ВХІДНИЙ_ФАЙЛ ВИХІДНИЙ_ФАЙЛ ..."
|
||
Новий режим обробки файлів. Перетворити дані з файла ВХІДНИЙ_ФАЙЛ і записати
|
||
результати до файла ВИХІДНИЙ_ФАЙЛ. Назви файлів слід вказувати парами, \fIне
|
||
слід\fR використовувати шаблони заміни, інакше вміст файлів \fIбуде втрачено\fR.
|
||
.Sp
|
||
Власником перетвореного файла буде призначено користувача, яким було
|
||
розпочато перетворення у режимі нового файла (парному режимі). Права доступу
|
||
на читання або запис нового файла буде визначено на основі прав доступу до
|
||
початкового файла мінус \fIumask\fR\|(1) для користувача, яким було розпочато
|
||
перетворення.
|
||
.IP "\fB\-o, \-\-oldfile ФАЙЛ ...\fR" 4
|
||
.IX Item "-o, --oldfile ФАЙЛ ..."
|
||
Застарілий режим обробки. Виконати перетворення файла ФАЙЛ і перезаписати
|
||
його вміст. Типово, програма працює у цьому режимі. Можна використовувати
|
||
шаблони заміни.
|
||
.Sp
|
||
У застарілому режимі (режимі заміщення) перетворений файл належатиме тому
|
||
самому власнику і групі і матиме ті самі права доступу на читання або запис,
|
||
що і початковий файл. Крім того, якщо перетворення файла виконується іншим
|
||
користувачем, який має права доступу на запис до файла (наприклад
|
||
користувачем root), перетворення буде перервано, якщо зберегти початкові
|
||
значення не вдасться. Зміна власника може означати неможливість читання
|
||
файла для його початкового власника. Зміна групи може призвести до проблем
|
||
із безпекою, оскільки файл може стати доступним для читання користувачам,
|
||
які не повинні мати такі права доступу. Можливість збереження прав власності
|
||
та прав доступу до файла передбачено лише у Unix.
|
||
.IP "\fB\-q, \-\-quiet\fR" 4
|
||
.IX Item "-q, --quiet"
|
||
Режим без виведення повідомлень. Програма не виводитиме жодних попереджень
|
||
або повідомлень про помилки. Повернутим значенням завжди буде нуль, якщо
|
||
вказано правильні параметри командного рядка.
|
||
.IP "\fB\-r, \-\-remove\-bom\fR" 4
|
||
.IX Item "-r, --remove-bom"
|
||
Вилучити позначку порядку байтів (\s-1BOM\s0). Не записувати \s-1BOM\s0 до файла
|
||
результатів. Це типова поведінка під час перетворення файлів з форматом
|
||
розриву рядків Unix. Див. також параметр \f(CW\*(C`\-b\*(C'\fR.
|
||
.IP "\fB\-s, \-\-safe\fR" 4
|
||
.IX Item "-s, --safe"
|
||
Пропускати двійкові файли (типово).
|
||
.IP "\fB\-u, \-\-keep\-utf16\fR" 4
|
||
.IX Item "-u, --keep-utf16"
|
||
Зберегти початкове кодування \s-1UTF\-16.\s0 Файл результатів буде записано у тому
|
||
самому кодуванні \s-1UTF\-16,\s0 із прямим або зворотним порядком байтів, що і
|
||
початковий файл. Таким чином можна запобігти перетворенню даних у кодування
|
||
\&\s-1UTF\-8.\s0 До файла буде записано відповідну позначку порядку байтів
|
||
\&\s-1UTF\-16.\s0 Вимкнути цей параметр можна за допомогою параметра \f(CW\*(C`\-ascii\*(C'\fR.
|
||
.IP "\fB\-ul, \-\-assume\-utf16le\fR" 4
|
||
.IX Item "-ul, --assume-utf16le"
|
||
Припускати, що кодуванням вхідних файлів є \s-1UTF\-16LE.\s0
|
||
.Sp
|
||
Якщо у початковому файлі є позначка порядку байтів (\s-1BOM\s0), її буде
|
||
використано у файлі\-результаті, незалежно від використання цього параметра.
|
||
.Sp
|
||
Якщо вами було зроблено помилкове припущення щодо формату файла (файл
|
||
вхідних даних насправді не є файлом у форматі \s-1UTF\-16LE\s0), і дані вдасться
|
||
успішно перетворити, ви отримаєте файл у кодуванні \s-1UTF\-8\s0 з помилковим
|
||
вмістом. Скасувати таке помилкове перетворення можна за допомогою зворотного
|
||
перетворення \fIiconv\fR\|(1) з даних у форматі \s-1UTF\-8\s0 на дані у форматі
|
||
\&\s-1UTF\-16LE.\s0 Таким чином ви повернетеся до початкового кодування даних у файлі.
|
||
.Sp
|
||
Припущення щодо форматування \s-1UTF\-16LE\s0 працює як визначення \fIрежиму
|
||
перетворення\fR. Перемиканням на типовий режим \fIascii\fR можна вимкнути
|
||
припущення щодо форматування \s-1UTF\-16LE.\s0
|
||
.IP "\fB\-ub, \-\-assume\-utf16be\fR" 4
|
||
.IX Item "-ub, --assume-utf16be"
|
||
Припускати, що вхідним форматом є \s-1UTF\-16BE.\s0
|
||
.Sp
|
||
Цей параметр працює у спосіб, тотожний до параметра \f(CW\*(C`\-ul\*(C'\fR.
|
||
.IP "\fB\-v, \-\-verbose\fR" 4
|
||
.IX Item "-v, --verbose"
|
||
Виводити докладні повідомлення. Буде показано додаткові дані щодо позначок
|
||
порядку байтів та кількості перетворених символів розриву рядків.
|
||
.IP "\fB\-F, \-\-follow\-symlink\fR" 4
|
||
.IX Item "-F, --follow-symlink"
|
||
Переходити за символічними посиланням і перетворювати файли, на які вони
|
||
вказують.
|
||
.IP "\fB\-R, \-\-replace\-symlink\fR" 4
|
||
.IX Item "-R, --replace-symlink"
|
||
Замінити символічні посилання перетвореними файлами (початкові файли, на які
|
||
вони вказують, змінено не буде).
|
||
.IP "\fB\-S, \-\-skip\-symlink\fR" 4
|
||
.IX Item "-S, --skip-symlink"
|
||
Не змінювати символічні посилання та файли, на які вони посилаються
|
||
(типово).
|
||
.IP "\fB\-V, \-\-version\fR" 4
|
||
.IX Item "-V, --version"
|
||
Вивести дані щодо версії і завершити роботу.
|
||
.SH "РЕЖИМ MAC"
|
||
.IX Header "РЕЖИМ MAC"
|
||
У звичайному режимі розриви рядків \s-1DOS\s0 перетворюються на розриви рядків
|
||
Unix, і навпаки. Розриви рядків Mac перетворенню не підлягають.
|
||
.PP
|
||
У режимі Mac розриви рядків Mac перетворюються на розриви рядків Unix, і
|
||
навпаки. Розриви рядків \s-1DOS\s0 перетворенню не підлягають.
|
||
.PP
|
||
Щоб запустити програму у режимі перетворення Mac, скористайтеся параметром
|
||
командного рядка \f(CW\*(C`\-c mac\*(C'\fR або програмами \f(CW\*(C`mac2unix\*(C'\fR та \f(CW\*(C`unix2mac\*(C'\fR.
|
||
.SH "РЕЖИМИ ПЕРЕТВОРЕННЯ"
|
||
.IX Header "РЕЖИМИ ПЕРЕТВОРЕННЯ"
|
||
.IP "\fBascii\fR" 4
|
||
.IX Item "ascii"
|
||
У режимі \f(CW\*(C`ascii\*(C'\fR виконуватиметься лише перетворення символів розриву
|
||
рядків. Цей режим є типовим режимом перетворення.
|
||
.Sp
|
||
Хоча цей режим і називається режимом \s-1ASCII \s0(стандарту 7\-бітового кодування),
|
||
насправді кодування символів у ньому є 8\-бітовим. Завжди користуйтеся цим
|
||
режимом для перетворення файлів у кодуванні \s-1UTF\-8 \s0(Unicode).
|
||
.IP "\fB7bit\fR" 4
|
||
.IX Item "7bit"
|
||
У цьому режимі усі 8\-бітові символи, які не є частиною \s-1ASCII, \s0(з номерами
|
||
від 128 до 255) буде перетворено на відповідні 7\-бітові символи.
|
||
.IP "\fBiso\fR" 4
|
||
.IX Item "iso"
|
||
Перетворення символів буде виконано з кодування (кодової сторінки) \s-1DOS\s0 до
|
||
кодування \s-1ISO\-8859\-1 \s0(Latin\-1) у Unix. Символи \s-1DOS,\s0 які не мають
|
||
еквівалентів у \s-1ISO\-8859\-1\s0 і перетворення яких неможливе, буде перетворено на
|
||
символ крапки. Те саме стосується символів \s-1ISO\-8859\-1,\s0 які не мають
|
||
еквівалентів у \s-1DOS.\s0
|
||
.Sp
|
||
Якщо буде використано лише параметр \f(CW\*(C`\-iso\*(C'\fR, програма dos2unix спробує
|
||
визначити активне кодування. Якщо це виявиться неможливим, dos2unix
|
||
використає типове кодування \s-1CP437,\s0 яке здебільшого використовується у
|
||
США. Щоб примусово визначити кодування, скористайтеся параметром \f(CW\*(C`\-437\*(C'\fR
|
||
(США), \f(CW\*(C`\-850\*(C'\fR (західноєвропейські мови), \f(CW\*(C`\-860\*(C'\fR (португальська), \f(CW\*(C`\-863\*(C'\fR
|
||
(канадська французька) або \f(CW\*(C`\-865\*(C'\fR (скандинавські мови). Використати
|
||
кодування Windows \s-1CP1252 \s0(західноєвропейські мови) можна за допомогою
|
||
параметра \f(CW\*(C`\-1252\*(C'\fR. Для інших кодувань використовуйте поєднання dos2unix з
|
||
\&\fIiconv\fR\|(1). Програма iconv здатна виконувати перетворення даних у доволі
|
||
широкому спектрі кодувань символів.
|
||
.Sp
|
||
Ніколи не користуйтеся перетворенням \s-1ISO\s0 для текстових файлів у форматі
|
||
Unicode. Використання подібного перетворення призведе до ушкодження вмісту
|
||
файлів у кодуванні \s-1UTF\-8.\s0
|
||
.Sp
|
||
Декілька прикладів:
|
||
.Sp
|
||
Перетворити дані у типовому кодуванні \s-1DOS\s0 на дані у кодуванні Latin\-1 Unix:
|
||
.Sp
|
||
.Vb 1
|
||
\& dos2unix \-iso \-n in.txt out.txt
|
||
.Ve
|
||
.Sp
|
||
Перетворити дані у кодуванні \s-1DOS CP850\s0 на дані у кодуванні Latin\-1 Unix:
|
||
.Sp
|
||
.Vb 1
|
||
\& dos2unix \-850 \-n in.txt out.txt
|
||
.Ve
|
||
.Sp
|
||
Перетворити дані у кодуванні \s-1CP1252\s0 Windows на дані у кодуванні Latin\-1
|
||
Unix:
|
||
.Sp
|
||
.Vb 1
|
||
\& dos2unix \-1252 \-n in.txt out.txt
|
||
.Ve
|
||
.Sp
|
||
Перетворити дані у кодуванні \s-1CP252\s0 Windows на дані у кодуванні \s-1UTF\-8\s0 Unix
|
||
(Unicode):
|
||
.Sp
|
||
.Vb 1
|
||
\& iconv \-f CP1252 \-t UTF\-8 in.txt | dos2unix > out.txt
|
||
.Ve
|
||
.Sp
|
||
Перетворити дані у кодуванні Latin\-1 Unix на дані у типовому кодуванні \s-1DOS:\s0
|
||
.Sp
|
||
.Vb 1
|
||
\& unix2dos \-iso \-n in.txt out.txt
|
||
.Ve
|
||
.Sp
|
||
Перетворити дані у кодуванні Latin\-1 Unix на дані у кодуванні \s-1DOS CP850:\s0
|
||
.Sp
|
||
.Vb 1
|
||
\& unix2dos \-850 \-n in.txt out.txt
|
||
.Ve
|
||
.Sp
|
||
Перетворити дані у кодуванні Latin\-1 Unix на дані у кодуванні Windows
|
||
\&\s-1CP1252:\s0
|
||
.Sp
|
||
.Vb 1
|
||
\& unix2dos \-1252 \-n in.txt out.txt
|
||
.Ve
|
||
.Sp
|
||
Перетворити дані у кодуванні \s-1UTF\-8\s0 Unix (Unicode) на дані у кодуванні
|
||
Windows \s-1CP1252:\s0
|
||
.Sp
|
||
.Vb 1
|
||
\& unix2dos < in.txt | iconv \-f UTF\-8 \-t CP1252 > out.txt
|
||
.Ve
|
||
.Sp
|
||
Див. також <http://czyborra.com/charsets/codepages.html> та
|
||
<http://czyborra.com/charsets/iso8859.html>.
|
||
.SH "UNICODE"
|
||
.IX Header "UNICODE"
|
||
.SS "Кодування"
|
||
.IX Subsection "Кодування"
|
||
Існує декілька різних кодувань Unicode. У Unix та Linux у файлах Unicode
|
||
здебільшого використовується кодування \s-1UTF\-8.\s0 У Windows для текстових файлів
|
||
Unicode може бути використано кодування \s-1UTF\-8, UTF\-16\s0 або \s-1UTF\-16\s0 зі
|
||
зворотним порядком байтів. Втім, здебільшого, використовується формат
|
||
\&\s-1UTF\-16.\s0
|
||
.SS "Перетворення"
|
||
.IX Subsection "Перетворення"
|
||
У текстових файлах Unicode, як і у звичайних текстових файлах, може бути
|
||
використано розриви рядків \s-1DOS,\s0 Unix або Mac.
|
||
.PP
|
||
Усі версії dos2unix та unix2dos здатні виконувати перетворення у кодуванні
|
||
\&\s-1UTF\-8,\s0 оскільки \s-1UTF\-8\s0 було розроблено так, що зворотну сумісність з \s-1ASCII\s0
|
||
збережено.
|
||
.PP
|
||
Програми dos2unix та unix2dos, зібрані з підтримкою Unicode \s-1UTF\-16,\s0 можуть
|
||
читати текстові файли у кодуванні \s-1UTF\-16\s0 з прямим та зворотним порядком
|
||
байтів. Щоб дізнатися про те, чи було dos2unix зібрано з підтримкою \s-1UTF\-16,\s0
|
||
віддайте команду \f(CW\*(C`dos2unix \-V\*(C'\fR.
|
||
.PP
|
||
У Unix/Linux файли у кодуванні \s-1UTF\-16\s0 перетворюються на файли у кодуванні
|
||
локалі. Для визначення поточного кодування символів локалі скористайтеся
|
||
командою \fIlocale\fR\|(1). Якщо перетворення виявиться неможливим, програма
|
||
повідомить про помилку перетворення і пропустить відповідний файл.
|
||
.PP
|
||
У Windows файли \s-1UTF\-16\s0 типово буде перетворено на файли \s-1UTF\-8.\s0 Обидва типи
|
||
систем, Windows та Unix/Linux, мають непогані можливості з підтримки файлів
|
||
у форматуванні \s-1UTF\-8.\s0
|
||
.PP
|
||
Кодування \s-1UTF\-16\s0 та \s-1UTF\-8\s0 є повністю сумісними. Під час перетворення не буде
|
||
втрачено жодної інформації. Якщо під час перетворення даних у кодуванні
|
||
\&\s-1UTF\-16\s0 на дані у кодуванні \s-1UTF\-8\s0 трапиться помилка, наприклад, якщо у
|
||
вхідному файлі \s-1UTF\-16\s0 міститиметься якась помилка, файл буде пропущено.
|
||
.PP
|
||
Якщо використано параметр \f(CW\*(C`\-u\*(C'\fR, файл результатів буде записано у тому
|
||
самому кодуванні \s-1UTF\-16,\s0 що і початковий файл. Використання параметра Option
|
||
\&\f(CW\*(C`\-u\*(C'\fR запобігає перетворенню даних у кодування \s-1UTF\-8.\s0
|
||
.PP
|
||
У dos2unix та unix2dos не передбачено параметра для перетворення даних у
|
||
кодуванні \s-1UTF\-8\s0 на дані у кодуванні \s-1UTF\-16.\s0
|
||
.PP
|
||
Режим перетворення \s-1ISO\s0 та 7\-бітовий режим не працюють для файлів \s-1UTF\-16.\s0
|
||
.SS "Позначка порядку байтів"
|
||
.IX Subsection "Позначка порядку байтів"
|
||
У Windows до текстових файлів у кодуванні Unicode типово дописується
|
||
позначка порядку байтів (\s-1BOM\s0), оскільки багато програм Windows (зокрема
|
||
Notepad) додають таку позначку автоматично. Див. також
|
||
<http://en.wikipedia.org/wiki/Byte_order_mark>.
|
||
.PP
|
||
У Unix файли у кодуванні Unicode типово не містять позначки порядку
|
||
байтів. Вважається, що кодуванням текстових файлів є те кодування, яке
|
||
визначається поточною локаллю.
|
||
.PP
|
||
Програма dos2unix може визначити, чи є кодуванням файла \s-1UTF\-16,\s0 лише якщо у
|
||
файлі міститься позначка порядку байтів. Якщо у файлі, де використано
|
||
кодування \s-1UTF\-16,\s0 немає такої позначки, dos2unix вважатиме такий файл
|
||
двійковим (бінарним).
|
||
.PP
|
||
Для перетворення файлів \s-1UTF\-16\s0 без позначки порядку байтів скористайтеся
|
||
параметром \f(CW\*(C`\-ul\*(C'\fR або \f(CW\*(C`\-ub\*(C'\fR.
|
||
.PP
|
||
Типово dos2unix не записує до файлів результатів перетворення позначки
|
||
порядку байтів (\s-1BOM\s0). Якщо використано параметр \f(CW\*(C`\-b\*(C'\fR, dos2unix запише до
|
||
файла результатів \s-1BOM,\s0 якщо \s-1BOM\s0 була у файлі початкових даних.
|
||
.PP
|
||
Типово unix2dos записує позначку порядку байтів (\s-1BOM\s0) до файла результатів,
|
||
якщо \s-1BOM\s0 є у початковому файлі. Скористайтеся параметром \f(CW\*(C`\-r\*(C'\fR, щоб вилучити
|
||
\&\s-1BOM.\s0
|
||
.PP
|
||
Dos2unix та unix2dos завжди записують до файла результатів позначку порядку
|
||
байтів (\s-1BOM\s0), якщо використано параметр \f(CW\*(C`\-m\*(C'\fR.
|
||
.SS "Приклади для Unicode"
|
||
.IX Subsection "Приклади для Unicode"
|
||
Перетворити дані з Windows \s-1UTF\-16 \s0(з позначкою порядку байтів (\s-1BOM\s0)) у
|
||
формат Unix \s-1UTF\-8:\s0
|
||
.PP
|
||
.Vb 1
|
||
\& dos2unix \-n in.txt out.txt
|
||
.Ve
|
||
.PP
|
||
Перетворити дані у форматі Windows \s-1UTF\-16LE \s0(без \s-1BOM\s0) на дані у форматі
|
||
\&\s-1UTF\-8\s0 Unix:
|
||
.PP
|
||
.Vb 1
|
||
\& dos2unix \-ul \-n in.txt out.txt
|
||
.Ve
|
||
.PP
|
||
Перетворити дані у кодуванні \s-1UTF\-8\s0 Unix на дані у кодуванні Windows \s-1UTF\-8\s0
|
||
без \s-1BOM:\s0
|
||
.PP
|
||
.Vb 1
|
||
\& unix2dos \-m \-n in.txt out.txt
|
||
.Ve
|
||
.PP
|
||
Перетворити дані у кодуванні \s-1UTF\-8\s0 Unix на дані у кодуванні Windows \s-1UTF\-16:\s0
|
||
.PP
|
||
.Vb 1
|
||
\& unix2dos < in.txt | iconv \-f UTF\-8 \-t UTF\-16 > out.txt
|
||
.Ve
|
||
.SH "GB18030"
|
||
.IX Header "GB18030"
|
||
\&\s-1GB18030\s0 є китайським урядовим стандартом. Підтримка обов’язкової підмножини
|
||
стандарту \s-1GB18030\s0 є неодмінною вимогою до будь\-яких програмних продуктів,
|
||
які продаються у Китаї. Див. також <http://en.wikipedia.org/wiki/GB_18030>.
|
||
.PP
|
||
Кодування \s-1GB18030\s0 є повністю сумісним із Unicode. Його можна розглядати як
|
||
формат перетворення unicode. Подібно до \s-1UTF\-8, GB18030\s0 є сумісним із
|
||
\&\s-1ASCII. GB18030\s0 також є сумісним із кодовою сторінкою Windows 936, яку ще
|
||
називають \s-1GBK.\s0
|
||
.PP
|
||
У Unix/Linux файли \s-1UTF\-16\s0 буде перетворено до кодування \s-1GB18030,\s0 якщо
|
||
кодуванням локалі є \s-1GB18030.\s0 Зауважте, що це спрацює, лише якщо встановлено
|
||
значення країни КНР. Наприклад, у англійській локалі для Великоританії із
|
||
встановленою локаллю \f(CW\*(C`en_GB.GB18030\*(C'\fR перетворення \s-1UTF\-16\s0 на \s-1GB18030\s0 не
|
||
працюватиме, а у китайській локалі \f(CW\*(C`zh_CN.GB18030\*(C'\fR все працюватиме як слід.
|
||
.PP
|
||
У Windows для перетворення файлів \s-1UTF\-16\s0 на файли \s-1GB18030\s0 слід вказати
|
||
параметр \f(CW\*(C`\-gb\*(C'\fR.
|
||
.PP
|
||
У файлах у кодуванні \s-1GB18030\s0 може міститися позначка порядку байтів, так
|
||
само, як у файлах у кодуванні Unicode.
|
||
.SH "ПРИКЛАДИ"
|
||
.IX Header "ПРИКЛАДИ"
|
||
Прочитати вхідні дані зі стандартного джерела (stdin) і записати результат
|
||
до стандартного виведення (stdout):
|
||
.PP
|
||
.Vb 2
|
||
\& dos2unix
|
||
\& dos2unix \-l \-c mac
|
||
.Ve
|
||
.PP
|
||
Перетворити дані у a.txt і замістити цей файл. Перетворити дані у b.txt і
|
||
замістити цей файл:
|
||
.PP
|
||
.Vb 2
|
||
\& dos2unix a.txt b.txt
|
||
\& dos2unix \-o a.txt b.txt
|
||
.Ve
|
||
.PP
|
||
Перетворити дані у a.txt і замістити файл у режимі перетворення ascii:
|
||
.PP
|
||
.Vb 1
|
||
\& dos2unix a.txt
|
||
.Ve
|
||
.PP
|
||
Перетворити дані у a.txt і замістити файл у режимі перетворення
|
||
ascii. Перетворити дані у b.txt і замістити цей файл у режимі 7\-бітового
|
||
перетворення:
|
||
.PP
|
||
.Vb 3
|
||
\& dos2unix a.txt \-c 7bit b.txt
|
||
\& dos2unix \-c ascii a.txt \-c 7bit b.txt
|
||
\& dos2unix \-ascii a.txt \-7 b.txt
|
||
.Ve
|
||
.PP
|
||
Перетворити файл a.txt з формату Mac на формат Unix:
|
||
.PP
|
||
.Vb 2
|
||
\& dos2unix \-c mac a.txt
|
||
\& mac2unix a.txt
|
||
.Ve
|
||
.PP
|
||
Перетворити файл a.txt з формату Unix на формат Mac:
|
||
.PP
|
||
.Vb 2
|
||
\& unix2dos \-c mac a.txt
|
||
\& unix2mac a.txt
|
||
.Ve
|
||
.PP
|
||
Перетворити дані у a.txt, замістити цей файл і зберегти часову позначку
|
||
початкового файла:
|
||
.PP
|
||
.Vb 2
|
||
\& dos2unix \-k a.txt
|
||
\& dos2unix \-k \-o a.txt
|
||
.Ve
|
||
.PP
|
||
Перетворити дані у файлі a.txt і записати результати до файла e.txt:
|
||
.PP
|
||
.Vb 1
|
||
\& dos2unix \-n a.txt e.txt
|
||
.Ve
|
||
.PP
|
||
Перетворити дані у файлі a.txt і записати результати до файла
|
||
e.txt. Скопіювати часову позначку файла a.txt для файла e.txt:
|
||
.PP
|
||
.Vb 1
|
||
\& dos2unix \-k \-n a.txt e.txt
|
||
.Ve
|
||
.PP
|
||
Перетворити дані у a.txt і замістити цей файл. Перетворити дані у b.txt і
|
||
записати результат до e.txt:
|
||
.PP
|
||
.Vb 2
|
||
\& dos2unix a.txt \-n b.txt e.txt
|
||
\& dos2unix \-o a.txt \-n b.txt e.txt
|
||
.Ve
|
||
.PP
|
||
Перетворити дані у c.txt і записати результати до e.txt. Перетворити дані у
|
||
a.txt і замістити ними цей файл. Перетворити дані у b.txt і замістити ними
|
||
цей файл. Перетворити дані у d.txt і записати результати до f.txt:
|
||
.PP
|
||
.Vb 1
|
||
\& dos2unix \-n c.txt e.txt \-o a.txt b.txt \-n d.txt f.txt
|
||
.Ve
|
||
.SH "РЕКУРСИВНЕ ПЕРЕТВОРЕННЯ"
|
||
.IX Header "РЕКУРСИВНЕ ПЕРЕТВОРЕННЯ"
|
||
Для рекурсивного перетворення текстових файлів у ієрархії каталогів слід
|
||
використовувати dos2unix у поєднанні з програмами \fIfind\fR\|(1) та
|
||
\&\fIxargs\fR\|(1). Наприклад, щоб виконати перетворення усіх файлів .txt у структурі
|
||
підкаталогів поточного каталогу, віддайте таку команду:
|
||
.PP
|
||
.Vb 1
|
||
\& find . \-name *.txt |xargs dos2unix
|
||
.Ve
|
||
.SH "ЛОКАЛІЗАЦІЯ"
|
||
.IX Header "ЛОКАЛІЗАЦІЯ"
|
||
.IP "\fB\s-1LANG\s0\fR" 4
|
||
.IX Item "LANG"
|
||
Основна мова визначається за допомогою змінної середовища \s-1LANG.\s0 Значення
|
||
змінної \s-1LANG\s0 складається з декількох частин. Перша частина записується
|
||
малими літерами і визначає код мови. Друга частина є необов’язковою,
|
||
визначає код країни і записується прописними літерами, відокремлюється від
|
||
першої частини символом підкреслювання. Передбачено також необов’язкову
|
||
третю частину: кодування. Ця частина відокремлюється від другої частини
|
||
крапкою. Ось декілька прикладів для командних оболонок стандартного типу
|
||
\&\s-1POSIX:\s0
|
||
.Sp
|
||
.Vb 7
|
||
\& export LANG=uk українська
|
||
\& export LANG=uk_UA українська, Україна
|
||
\& export LANG=ru_UA російська, Україна
|
||
\& export LANG=es_ES іспанська, Іспанія
|
||
\& export LANG=es_MX іспанська, Мексика
|
||
\& export LANG=en_US.iso88591 англійська, США, кодування Latin\-1
|
||
\& export LANG=en_GB.UTF\-8 англійська, Великобританія, кодування UTF\-8
|
||
.Ve
|
||
.Sp
|
||
Повний список мов та кодів країн наведено у підручнику з gettext:
|
||
<http://www.gnu.org/software/gettext/manual/html_node/Usual\-Language\-Codes.html>
|
||
.Sp
|
||
У системах Unix для отримання даних щодо локалі можна скористатися командою
|
||
\&\fIlocale\fR\|(1).
|
||
.IP "\fB\s-1LANGUAGE\s0\fR" 4
|
||
.IX Item "LANGUAGE"
|
||
За допомогою змінної середовища \s-1LANGUAGE\s0 ви можете вказати список
|
||
пріоритеності мов. Записи у списку слід відокремлювати двокрапками. Програма
|
||
dos2unix надає перевагу \s-1LANGUAGE\s0 над \s-1LANG.\s0 Наприклад, перша голландська,
|
||
далі німецька: \f(CW\*(C`LANGUAGE=nl:de\*(C'\fR. Спочатку вам слід увімкнути локалізацію,
|
||
встановивши для змінної \s-1LANG \s0(або \s-1LC_ALL\s0) значення, відмінне від «C». Далі
|
||
ви зможете використовувати список пріоритетності мов за допомогою змінної
|
||
\&\s-1LANGUAGE.\s0 Додаткові відомості можна знайти у підручнику з gettext:
|
||
<http://www.gnu.org/software/gettext/manual/html_node/The\-LANGUAGE\-variable.html>
|
||
.Sp
|
||
Якщо вами буде вибрано мову, перекладу якою немає, буде показано стандартні
|
||
повідомлення англійською мовою.
|
||
.IP "\fB\s-1DOS2UNIX_LOCALEDIR\s0\fR" 4
|
||
.IX Item "DOS2UNIX_LOCALEDIR"
|
||
Змінну \s-1LOCALEDIR,\s0 встановлену під час збирання програми, можна змінити за
|
||
допомогою змінної середовища \s-1DOS2UNIX_LOCALEDIR. LOCALEDIR\s0 використовується
|
||
для пошуку файлів перекладів. Типовим значенням у системах \s-1GNU\s0 є
|
||
\&\f(CW\*(C`/usr/local/share/locale\*(C'\fR. Переглянути поточне значення змінної \s-1LOCALEDIR\s0
|
||
можна переглянути за допомогою параметра \fB\-\-version\fR.
|
||
.Sp
|
||
Приклад (командна оболонка \s-1POSIX\s0):
|
||
.Sp
|
||
.Vb 1
|
||
\& export DOS2UNIX_LOCALEDIR=$HOME/share/locale
|
||
.Ve
|
||
.SH "ПОВЕРНУТЕ ЗНАЧЕННЯ"
|
||
.IX Header "ПОВЕРНУТЕ ЗНАЧЕННЯ"
|
||
Якщо завдання вдасться успішно виконати, програма поверне нульовий код
|
||
виходу. Якщо станеться системна помилка, буде повернуто код цієї
|
||
помилки. Якщо станеться якась інша помилка, буде повернуто код 1.
|
||
.PP
|
||
У режимі без повідомлень повернутим значенням завжди буде нуль, якщо вказано
|
||
правильні параметри командного рядка.
|
||
.SH "СТАНДАРТИ"
|
||
.IX Header "СТАНДАРТИ"
|
||
<http://en.wikipedia.org/wiki/Text_file>
|
||
.PP
|
||
<http://uk.wikipedia.org/wiki/Carriage_return>
|
||
.PP
|
||
<http://uk.wikipedia.org/wiki/Newline>
|
||
.PP
|
||
<http://uk.wikipedia.org/wiki/Unicode>
|
||
.SH "АВТОРИ"
|
||
.IX Header "АВТОРИ"
|
||
Benjamin Lin \- <blin@socs.uts.edu.au>, Bernd Johannes Wuebben (режим
|
||
mac2unix) \- <wuebben@kde.org>, Christian Wurll (додатковий новий рядок) \-
|
||
<wurll@ira.uka.de>, Erwin Waterlander \- <waterlan@xs4all.nl> (супровідник)
|
||
.PP
|
||
Сторінка проекту: <http://waterlan.home.xs4all.nl/dos2unix.html>
|
||
.PP
|
||
Сторінка на SourceForge: <http://sourceforge.net/projects/dos2unix/>
|
||
.SH "ТАКОЖ ПЕРЕГЛЯНЬТЕ"
|
||
.IX Header "ТАКОЖ ПЕРЕГЛЯНЬТЕ"
|
||
\&\fIfile\fR\|(1) \fIfind\fR\|(1) \fIiconv\fR\|(1) \fIlocale\fR\|(1) \fIxargs\fR\|(1)
|