dos2unix - пÑогÑама Ð´Ð»Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ Ñ ÑекÑÑÐ¾Ð²Ð¾Ð¼Ñ ÑоÑмаÑÑ DOS/Mac Ñ ÑоÑÐ¼Ð°Ñ Unix, Ñ Ð½Ð°Ð²Ð¿Ð°ÐºÐ¸
dos2unix [паÑамеÑÑи] [ФÐÐÐ ...] [-n ÐÐ¥ÐÐÐÐÐ_ФÐÐÐ ÐÐÐ¥ÐÐÐÐÐ_ФÐÐÐ ...]
unix2dos [паÑамеÑÑи] [ФÐÐÐ ...] [-n ÐÐ¥ÐÐÐÐÐ_ФÐÐÐ ÐÐÐ¥ÐÐÐÐÐ_ФÐÐÐ ...]
Ðо ÑÐºÐ»Ð°Ð´Ñ Ð¿Ð°ÐºÑнка Dos2unix вклÑÑено пÑогÑами dos2unix Ñа unix2dos,
пÑизнаÑÐµÐ½Ñ Ð´Ð»Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ Ð·Ð²Ð¸ÑайниÑ
ÑекÑÑовиÑ
даниÑ
Ñ ÑоÑмаÑÑ DOS або Mac
на Ð´Ð°Ð½Ñ Ñ ÑоÑмаÑÑ Unix, Ñ Ð½Ð°Ð²Ð¿Ð°ÐºÐ¸.
У ÑекÑÑÐ¾Ð²Ð¸Ñ ÑÐ°Ð¹Ð»Ð°Ñ DOS/Windows ÑозÑив ÑÑдка або пеÑÐµÑ Ñд на новий ÑÑдок здÑйÑнÑÑÑÑÑÑ Ð·Ð° Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ ÐºÐ¾Ð¼Ð±ÑнаÑÑÑ Ð´Ð²Ð¾Ñ ÑимволÑв: повеÑÐ½ÐµÐ½Ð½Ñ ÐºÐ°ÑеÑки (CR) Ñ Ð¿ÐµÑÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ ÑÑдка (LF). У ÑекÑÑÐ¾Ð²Ð¸Ñ ÑÐ°Ð¹Ð»Ð°Ñ Unix за пеÑÐµÑ Ñд на новий ÑÑдок вÑдповÑÐ´Ð°Ñ Ð¾Ð´Ð¸Ð½ Ñимвол: пеÑÐµÐ²ÐµÐ´ÐµÐ½Ð½Ñ ÑÑдка (LF). У ÑекÑÑÐ¾Ð²Ð¸Ñ ÑÐ°Ð¹Ð»Ð°Ñ Mac, до Mac OS X, за ÑозÑив ÑÑдка вÑдповÑдав один Ñимвол: повеÑÐ½ÐµÐ½Ð½Ñ ÐºÐ°ÑеÑки (CR). У ÑÑÑаÑÐ½Ð¸Ñ Ð²ÐµÑÑÑÑÑ Mac OS викоÑиÑÑовÑÑÑÑÑÑ Ñиповий Ð´Ð»Ñ Unix ÑозÑив ÑÑдка (LF).
ÐкÑÑм ÑимволÑв ÑозÑÐ¸Ð²Ñ ÑÑдка, пÑогÑама Dos2unix здаÑна виконÑваÑи пеÑеÑвоÑÐµÐ½Ð½Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ ÑайлÑв. Ðожна пеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ Ð´ÐµÐºÑлÑÐºÐ¾Ñ ÐºÐ¾Ð´ÑваннÑÑ DOS на Ñайли Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Latin-1 Unix. Також можна пеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÑÐ°Ð¹Ð»Ð°Ñ Windows Unicode (UTF-16) на Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Unix Unicode (UTF-8).
ÐÑд ÑÐ°Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ Ð¿ÑогÑама пÑопÑÑкаÑиме двÑÐ¹ÐºÐ¾Ð²Ñ Ñайли, ÑкÑо ви не накажеÑе Ñй виконаÑи пеÑеÑвоÑÐµÐ½Ð½Ñ ÑÐ°ÐºÐ¸Ñ ÑайлÑв безпоÑеÑеднÑо.
ÐÑогÑама авÑомаÑиÑно пÑопÑÑкаÑиме Ñайли, ÑÐºÑ Ð½Ðµ Ñ Ð·Ð²Ð¸Ñайними Ñайлами, зокÑема каÑалоги Ñа канали FIFO.
Типово, пÑогÑама не вноÑиÑиме змÑн до ÑимволÑÑÐ½Ð¸Ñ Ð¿Ð¾ÑÐ¸Ð»Ð°Ð½Ñ Ñа обâÑкÑÑв поÑиланÑ. ЯкÑо поÑÑÑбно, пÑогÑама може замÑниÑи ÑимволÑÑÐ½Ñ Ð¿Ð¾ÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ запиÑаÑи пеÑеÑвоÑÐµÐ½Ñ Ð´Ð°Ð½Ñ Ð´Ð¾ Ñайла-пÑизнаÑÐµÐ½Ð½Ñ ÑимволÑÑного поÑиланнÑ. У Windows запиÑÑ Ð´Ð¾ обâÑкÑа ÑимволÑÑного поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð½Ðµ пеÑедбаÑено.
ÐÑогÑÐ°Ð¼Ñ dos2unix бÑло ÑÑвоÑено за зÑазком пÑогÑами dos2unix длÑ
SunOS/Solaris. ÐÑÑм, ÑÑнÑÑ Ð¾Ð´Ð½Ð° важлива вÑдмÑннÑÑÑÑ Ð²Ñд оÑигÑналÑÐ½Ð¾Ñ Ð²ÐµÑÑÑÑ
Ð´Ð»Ñ SunOS/Solaris. Ð¦Ñ Ð²ÐµÑÑÑÑ Ñипово виконÑÑ Ð·Ð°Ð¼ÑÐ½Ñ ÑайлÑв пÑд ÑаÑ
пеÑеÑвоÑÐµÐ½Ð½Ñ (ÑÑаÑий Ñежим обÑобки ÑайлÑв), а Ñ Ð¾ÑигÑналÑнÑй веÑÑÑÑ Ð´Ð»Ñ
SunOS/Solaris пеÑедбаÑено пÑдÑÑÐ¸Ð¼ÐºÑ Ð»Ð¸Ñе паÑного пеÑеÑвоÑÐµÐ½Ð½Ñ (новий Ñежим
обÑобки ÑайлÑв). Ðив. Ñакож паÑамеÑÑи -o Ñа -n. Ще однÑÑÑ Ð²ÑдмÑннÑÑÑÑ
Ñ Ñе, Ñо Ñ Ð²ÐµÑÑÑÑ Ð´Ð»Ñ SunOS/Solaris Ñипово викоÑиÑÑовÑвавÑÑ Ñежим
пеÑеÑвоÑÐµÐ½Ð½Ñ iso, а Ñ ÑÑй веÑÑÑÑ Ñиповим Ñ Ñежим пеÑеÑвоÑÐµÐ½Ð½Ñ ascii.
ÐважаÑи ÑÑÑ Ð½Ð°ÑÑÑÐ¿Ð½Ñ Ð¿Ð°ÑамеÑÑи назвами ÑайлÑв. Цим паÑамеÑÑом ÑлÑд коÑиÑÑÑваÑиÑÑ, ÑкÑо вам поÑÑÑбно виконаÑи пеÑеÑвоÑÐµÐ½Ð½Ñ ÑайлÑв, ÑÐ¸Ñ Ð½Ð°Ð·Ð²Ð¸ мÑÑÑÑÑÑ Ð´ÐµÑÑÑи. ÐапÑиклад, Ñоб виконаÑи пеÑеÑвоÑÐµÐ½Ð½Ñ Ñайла «-foo», ÑкоÑиÑÑайÑеÑÑ ÑÐ°ÐºÐ¾Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ñ:
dos2unix -- -foo
Ðбо Ñ Ð½Ð¾Ð²Ð¾Ð¼Ñ ÑÐµÐ¶Ð¸Ð¼Ñ ÑайлÑв:
dos2unix -n -- -foo out.txt
Allow file ownership change in old file mode.
When this option is used, the conversion will not be aborted when the user
and/or group ownership of the original file can't be preserved in old file
mode. Conversion will continue and the converted file will get the same new
ownership as if it was converted in new file mode. See also options -o
and -n. This option is only available if dos2unix has support for
preserving the user and group ownership of files.
ÐиконаÑи лиÑе пеÑеÑвоÑÐµÐ½Ð½Ñ ÑимволÑв ÑозÑÐ¸Ð²Ñ ÑÑдкÑв. Типовий Ñежим пеÑеÑвоÑеннÑ.
ÐиконаÑи пеÑеÑвоÑÐµÐ½Ð½Ñ Ð· кодÑÐ²Ð°Ð½Ð½Ñ DOS на кодÑÐ²Ð°Ð½Ð½Ñ ISO-8859-1. Ðив. ÑоздÑл Ñодо ÑежимÑв пеÑеÑвоÑеннÑ.
ÐикоÑиÑÑаÑи ÐºÐ¾Ð´Ð¾Ð²Ñ ÑаблиÑÑ 1252 Windows (Ð·Ð°Ñ ÑдноÑвÑопейÑÑÐºÑ Ð¼Ð¾Ð²Ð¸).
ÐикоÑиÑÑовÑваÑи ÐºÐ¾Ð´Ð¾Ð²Ñ ÑÑоÑÑÐ½ÐºÑ DOS 437 (СШÐ). Це Ñипова кодова ÑÑоÑÑнка Ð´Ð»Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ ISO.
ÐикоÑиÑÑовÑваÑи ÐºÐ¾Ð´Ð¾Ð²Ñ ÑÑоÑÑÐ½ÐºÑ DOS 850 (Ð·Ð°Ñ ÑдноÑвÑопейÑÑÐºÑ Ð¼Ð¾Ð²Ð¸).
ÐикоÑиÑÑовÑваÑи ÑÑоÑÑÐ½ÐºÑ DOS 860 (поÑÑÑгалÑÑÑка).
ÐикоÑиÑÑовÑваÑи ÑÑоÑÑÐ½ÐºÑ DOS 863 (канадÑÑка ÑÑанÑÑзÑка).
ÐикоÑиÑÑовÑваÑи ÑÑоÑÑÐ½ÐºÑ DOS 865 (ÑкандинавÑÑÐºÑ Ð¼Ð¾Ð²Ð¸).
ÐеÑеÑвоÑÑваÑи 8-бÑÑÐ¾Ð²Ñ Ñимволи на 7-бÑÑовÑ.
ÐбеÑегÑи познаÑÐºÑ Ð¿Ð¾ÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв (BOM). ЯкÑо Ñ ÑÐ°Ð¹Ð»Ñ Ð²Ñ
ÑдниÑ
даниÑ
Ñ BOM,
запиÑаÑи BOM до Ñайла ÑезÑлÑÑаÑÑв. Це Ñипова поведÑнка пÑд ÑÐ°Ñ Ð¿ÐµÑеÑвоÑеннÑ
Ñ ÑоÑÐ¼Ð°Ñ Ñз Ñимволами ÑозÑÐ¸Ð²Ñ ÑÑдкÑв DOS. Ðив. Ñакож паÑамеÑÑ -r.
ÐÑÑановиÑи Ñежим пеÑеÑвоÑеннÑ. ÐнаÑеннÑм аÑгÑменÑÑ Ð ÐÐÐРможе бÑÑи один з ÑÐ°ÐºÐ¸Ñ ÑÑдкÑв: ascii, 7bit, iso, mac. Типовим Ñ Ñежим ascii.
ÐÑÑановиÑи кодÑÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾ÐºÐ°Ð·Ð°Ð½Ð¾Ð³Ð¾ ÑекÑÑÑ. ÐÐ¾Ð¶Ð»Ð¸Ð²Ñ Ð²Ð°ÑÑанÑи знаÑÐµÐ½Ñ Ð¿Ð°ÑамеÑÑа ÐÐÐУÐÐÐÐЯ: ansi, unicode, unicodebom, utf8, utf8bom, Ñиповим Ñ ansi.
Цей паÑамеÑÑ Ð´Ð¾ÑÑÑпний лиÑе Ñ dos2unix Ð´Ð»Ñ Windows з пÑдÑÑÐ¸Ð¼ÐºÐ¾Ñ Ð½Ð°Ð·Ð² ÑайлÑв Ñ Unicode. Цей паÑамеÑÑ Ð½Ðµ Ð²Ð¿Ð»Ð¸Ð²Ð°Ñ Ð½Ð° ÑпÑÐ°Ð²Ð¶Ð½Ñ ÑиÑÐ°Ð½Ð½Ñ Ñа Ð·Ð°Ð¿Ð¸Ñ Ð½Ð°Ð·Ð² ÑайлÑв, лиÑе на Ñе, Ñк бÑде показано ÑÑ Ð½Ð°Ð·Ð²Ð¸.
ÐÑнÑÑ Ð´ÐµÐºÑлÑка ÑпоÑобÑв Ð¿Ð¾ÐºÐ°Ð·Ñ ÑекÑÑÑ Ñ ÐºÐ¾Ð½ÑÐ¾Ð»Ñ Windows, заÑÐ½Ð¾Ð²Ð°Ð½Ð¸Ñ Ð½Ð° кодÑÐ²Ð°Ð½Ð½Ñ ÑекÑÑÑ. УÑÑ ÑÑ ÑпоÑоби маÑÑÑ ÑÐ²Ð¾Ñ Ð¿ÐµÑеваги Ñ Ð½ÐµÐ´Ð¾Ð»Ñки.
Типовим ÑпоÑобом Ð´Ð»Ñ dos2unix Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ ÑекÑÑÑ Ñ ÑоÑмаÑÑ ANSI. ÐеÑÐµÐ²Ð°Ð³Ð¾Ñ Ñ
звоÑоÑна ÑÑмÑÑнÑÑÑÑ. Цей ваÑÑÐ°Ð½Ñ Ð¿ÑаÑÑÑ Ð· ÑаÑÑÑовими ÑÑиÑÑами Ñа ÑÑиÑÑами
TrueType. У деÑкиÑ
ÑегÑонаÑ
, ймовÑÑно, вам доведеÑÑÑÑ Ð·Ð¼ÑниÑи акÑÐ¸Ð²Ð½Ñ ÐºÐ¾Ð´Ð¾Ð²Ñ
ÑÑоÑÑÐ½ÐºÑ DOS OEM на ÑиÑÑÐµÐ¼Ð½Ñ ÐºÐ¾Ð´Ð¾Ð²Ñ ÑÑоÑÑÐ½ÐºÑ ANSI Windows за допомогоÑ
команди chcp, оÑкÑлÑки dos2unix викоÑиÑÑовÑÑ ÑиÑÑÐµÐ¼Ð½Ñ ÐºÐ¾Ð´Ð¾Ð²Ñ ÑÑоÑÑнкÑ
Windows.
ÐедолÑком ansi Ñ Ñе, Ñо назви ÑайлÑв Ñз Ñимволами, ÑÐºÐ¸Ñ Ð½ÐµÐ¼Ð°Ñ Ñ ÑÐ¸Ð¿Ð¾Ð²Ð¾Ð¼Ñ ÑиÑÑÐµÐ¼Ð½Ð¾Ð¼Ñ ÐºÐ¾Ð´ÑваннÑ, бÑде показано непÑавилÑно. ÐамÑÑÑÑ ÑÐ¸Ñ ÑимволÑв ви побаÑиÑе знак пиÑÐ°Ð½Ð½Ñ Ð°Ð±Ð¾ не Ñой Ñимвол. ЯкÑо Ñ Ð²Ð°ÑÑй ÑиÑÑÐµÐ¼Ñ Ð½ÐµÐ¼Ð°Ñ ÑайлÑв Ñз назвами, ÑÐºÑ Ð¼ÑÑÑÑÑÑ Ð½ÐµÑÐ¸Ð¿Ð¾Ð²Ñ Ñимволи, можна ÑкоÑиÑÑаÑиÑÑ Ñим ваÑÑанÑом.
ÐеÑÐµÐ²Ð°Ð³Ð¾Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ unicode (назва Ñ Windows кодÑÐ²Ð°Ð½Ð½Ñ UTF-16) Ñ Ñе, Ñо зазвиÑай ÑекÑÑ Ð±Ñде показано пÑавилÑно. ÐмÑнÑваÑи акÑÐ¸Ð²Ð½Ñ ÐºÐ¾Ð´Ð¾Ð²Ñ ÑÑоÑÑÐ½ÐºÑ Ð½Ðµ поÑÑÑбно. ÐмовÑÑно, вам поÑÑÑбно вÑÑановиÑи ÑÑиÑÑ ÐºÐ¾Ð½ÑÐ¾Ð»Ñ TrueType Ð´Ð»Ñ Ð½Ð°Ð»ÐµÐ¶Ð½Ð¾Ð³Ð¾ Ð¿Ð¾ÐºÐ°Ð·Ñ Ð½ÐµÑÑандаÑÑÐ½Ð¸Ñ ÑимволÑв. ЯкÑо Ñимвол не пеÑедбаÑено Ñ ÑÑиÑÑÑ TrueType, зазвиÑай ви побаÑиÑе невелиÑкий квадÑаÑик замÑÑÑÑ ÑимволÑ, ÑÐ½Ð¾Ð´Ñ Ñз знаком пиÑÐ°Ð½Ð½Ñ Ñ Ð½ÑомÑ.
ЯкÑо ви коÑиÑÑÑÑÑеÑÑ ÐºÐ¾Ð½ÑÐ¾Ð»Ð»Ñ ConEmu, веÑÑ ÑекÑÑ Ð±Ñде показано належним Ñином, оÑкÑлÑки ConEmu авÑомаÑиÑно вибиÑÐ°Ñ Ð½Ð°Ð»ÐµÐ¶Ð½Ð¸Ð¹ ÑÑиÑÑ.
ÐедолÑком unicode Ñ Ñе, Ñо Ñе кодÑÐ²Ð°Ð½Ð½Ñ Ð½ÐµÑÑмÑÑне з ASCII. ÐбÑобка Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð¸Ñ Ñ Ð½ÐµÐ¿ÑоÑÑоÑ, ÑкÑо ви пеÑедаваÑимеÑе ÑÑ Ð´Ð°Ð½Ñ Ð´Ð¾ ÑнÑÐ¾Ñ Ð¿ÑогÑами або Ñайла.
ЯкÑо викоÑиÑÑовÑÑÑÑÑÑ Ð¼ÐµÑод unicodebom, ÑекÑÑ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Unicode бÑде
обÑоблено з ÑÑаÑ
ÑваннÑм BOM (познаÑки поÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв). BOM поÑÑÑбна длÑ
пÑавилÑного пеÑеÑпÑÑмовÑÐ²Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ ÑÑнелÑÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ
Ñ PowerShell.
ÐеÑÐµÐ²Ð°Ð³Ð¾Ñ utf8 Ñ Ñе, Ñо Ñе кодÑÐ²Ð°Ð½Ð½Ñ ÑÑмÑÑне з ASCII. Ðам ÑлÑд вÑÑановиÑи
ÑÑиÑÑ ÐºÐ¾Ð½ÑÐ¾Ð»Ñ TrueType. ЯкÑо викоÑиÑÑано ÑÑиÑÑ TrueType, ÑекÑÑ Ð±Ñде показано
подÑбно до Ñого, Ñк його показано, ÑкÑо визнаÑено кодÑÐ²Ð°Ð½Ð½Ñ unicode.
ÐедолÑком Ñ Ñе, Ñо ÑкÑо ви ÑкоÑиÑÑаÑÑеÑÑ Ñиповим ÑаÑÑÑовим ÑÑиÑÑом, ÑÑÑ Ñимволи поза ASCII бÑде показано непÑавилÑно. Ðе лиÑе назви ÑайлÑв Ñ unicode, а й пеÑÐµÐºÐ»Ð°Ð´ÐµÐ½Ñ Ð¿Ð¾Ð²ÑÐ´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ ÑÑанÑÑÑ Ð½ÐµÐ¿ÑидаÑними до ÑиÑаннÑ. У Windows, налаÑÑÐ¾Ð²Ð°Ð½Ð¾Ð¼Ñ Ð½Ð° ÑобоÑÑ Ñ ÑÑ Ñдно-азÑйÑÑÐºÐ¾Ð¼Ñ ÑегÑонÑ, ви можеÑе помÑÑиÑи знаÑне Ð±Ð»Ð¸Ð¼Ð°Ð½Ð½Ñ Ð¿Ñд ÑÐ°Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ Ð¿Ð¾Ð²ÑдомленÑ.
У конÑÐ¾Ð»Ñ ConEmu добÑе пÑаÑÑÑ ÑпоÑÑб кодÑÐ²Ð°Ð½Ð½Ñ utf8.
ЯкÑо викоÑиÑÑовÑÑÑÑÑÑ Ð¼ÐµÑод utf8bom, ÑекÑÑ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-8 бÑде
обÑоблено з ÑÑаÑ
ÑваннÑм BOM (познаÑки поÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв). BOM поÑÑÑбна длÑ
пÑавилÑного пеÑеÑпÑÑмовÑÐ²Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ ÑÑнелÑÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ
Ñ PowerShell.
Типове кодÑÐ²Ð°Ð½Ð½Ñ Ð¼Ð¾Ð¶Ð½Ð° змÑниÑи за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Ð·Ð¼ÑÐ½Ð½Ð¾Ñ ÑеÑедовиÑа
DOS2UNIX_DISPLAY_ENC вÑÑановленнÑм Ð´Ð»Ñ Ð½ÐµÑ Ð·Ð½Ð°ÑÐµÐ½Ð½Ñ unicode,
unicodebom, utf8 або utf8bom.
ÐÑимÑÑове пеÑеÑвоÑÐµÐ½Ð½Ñ Ð´Ð²ÑÐ¹ÐºÐ¾Ð²Ð¸Ñ ÑайлÑв.
У Windows Ñайли в UTF-16 Ñипово пеÑеÑвоÑÑÑÑÑÑÑ Ð½Ð° Ñайли в UTF-8, незалежно вÑд вÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¾Ñ Ð»Ð¾ÐºÐ°Ð»Ñ. Ðа Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ ÑÑого паÑамеÑÑа ви можеÑе наказаÑи пÑогÑÐ°Ð¼Ñ Ð¿ÐµÑеÑвоÑÑваÑи Ñайли в UTF-16 на Ñайли Ñ GB18030. Цим паÑамеÑÑом можна ÑкоÑиÑÑаÑиÑÑ Ð»Ð¸Ñе Ñ Windows. Ðив. Ñакож ÑоздÑл, пÑиÑвÑÑений GB18030.
ÐоказаÑи довÑÐ´ÐºÐ¾Ð²Ñ Ð´Ð°Ð½Ñ Ñ Ð·Ð°Ð²ÐµÑÑиÑи ÑобоÑÑ.
ÐивеÑÑи Ð´Ð°Ð½Ñ Ñодо Ñайла. Ðе виконÑваÑи пеÑеÑвоÑеннÑ.
ÐÑде виведено ÑÐ°ÐºÑ Ð´Ð°Ð½Ñ, Ñ Ð²ÐºÐ°Ð·Ð°Ð½Ð¾Ð¼Ñ Ð¿Ð¾ÑÑдкÑ: кÑлÑкÑÑÑÑ ÑозÑивÑв ÑÑдкÑв Ñ ÑоÑмаÑÑ DOS, кÑлÑкÑÑÑÑ ÑозÑивÑв ÑÑдкÑв Ñ ÑоÑмаÑÑ Unix, кÑлÑкÑÑÑÑ ÑозÑивÑв ÑÑдкÑв Ñ ÑоÑмаÑÑ Mac, познаÑка поÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв, ÑекÑÑовим Ñи бÑнаÑним Ñ Ñайл Ñа Ð½Ð°Ð·Ð²Ñ Ñайла.
ÐÑиклад ÑезÑлÑÑаÑÑв:
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
ÐаÑважÑе, Ñо ÑÐ½Ð¾Ð´Ñ Ð±ÑнаÑÐ½Ñ Ñайли помилково ÑозпÑзнаÑÑÑÑÑ Ñк
ÑекÑÑовÑ. Ðив. Ñакож паÑамеÑÑ -s.
ÐÑÑм Ñого, можна вказаÑи додаÑÐºÐ¾Ð²Ñ Ð¿ÑапоÑÑÑ Ð´Ð»Ñ Ð²Ð½ÐµÑÐµÐ½Ð½Ñ Ð·Ð¼Ñн Ñ Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ñ Ð´Ð°Ð½Ñ. Ðожна викоÑиÑÑовÑваÑи один або декÑлÑка ÑÐ°ÐºÐ¸Ñ Ð¿ÑапоÑÑÑв.
ÐиводиÑи ÑÑдки даниÑ
Ñодо Ñайла Ñз завеÑÑеннÑм на нÑлÑовий Ñимвол, а не
Ñимвол ÑозÑÐ¸Ð²Ñ ÑÑдка. Це ÑможливлÑÑ Ð¿ÑавилÑÐ½Ñ ÑнÑеÑпÑеÑаÑÑÑ Ð½Ð°Ð·Ð² ÑайлÑв, Ñо
мÑÑÑÑÑÑ Ð¿ÑобÑли або Ñимволи лапок, ÑкÑо викоÑиÑÑано пÑапоÑеÑÑ
«c». СкоÑиÑÑайÑеÑÑ Ñим пÑапоÑÑем Ñ Ð¿Ð¾ÑÐ´Ð½Ð°Ð½Ð½Ñ Ñз паÑамеÑÑом -0 або
--null xargs(1).
ÐивеÑÑи кÑлÑкÑÑÑÑ ÑимволÑв ÑозÑивÑв ÑÑдка DOS.
ÐивеÑÑи кÑлÑкÑÑÑÑ ÑимволÑв ÑозÑивÑв ÑÑдка Unix.
ÐивеÑÑи кÑлÑкÑÑÑÑ ÑимволÑв ÑозÑивÑв ÑÑдка Mac.
ÐивеÑÑи познаÑÐºÑ Ð¿Ð¾ÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв.
ÐивеÑÑи Ð´Ð°Ð½Ñ Ñодо Ñого, Ñ Ñайл ÑекÑÑовим Ñи бÑнаÑним.
ÐивеÑÑи Ð´Ð°Ð½Ñ Ð»Ð¸Ñе ÑÐ¸Ñ ÑайлÑв, ÑÐºÑ Ð±Ñло б пеÑеÑвоÑено.
Ðз пÑапоÑÑем c dos2unix виведе лиÑе назви ÑайлÑв, Ñ ÑкиÑ
мÑÑÑÑÑÑÑÑ
ÑозÑиви ÑÑдкÑв DOS. unix2dos виведе лиÑе назви ÑайлÑв, Ñ ÑкиÑ
мÑÑÑÑÑÑÑÑ
ÑозÑиви ÑÑдкÑв Unix.
ÐивеÑÑи заголовок.
ÐоказÑваÑи назви ÑайлÑв без ÑлÑÑ Ñв.
ÐÑиклади:
ÐивеÑÑи Ð´Ð°Ð½Ñ Ñодо ÑÑÑÑ ÑайлÑв *.txt:
dos2unix -i *.txt
ÐивеÑÑи кÑлÑкÑÑÑÑ ÑозÑивÑв ÑÑдкÑв Ñ ÑоÑмаÑÑ DOS Ñ ÑозÑивÑв ÑÑдкÑв Ñ ÑоÑмаÑÑ Unix:
dos2unix -idu *.txt
ÐивеÑÑи лиÑе познаÑÐºÑ Ð¿Ð¾ÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв:
dos2unix --info=b *.txt
ÐивеÑÑи ÑпиÑок ÑайлÑв, Ñ ÑÐºÐ¸Ñ Ñ Ñимволи ÑозÑÐ¸Ð²Ñ ÑÑдкÑв DOS:
dos2unix -ic *.txt
ÐивеÑÑи ÑпиÑок ÑайлÑв, Ñ ÑÐºÐ¸Ñ Ð²Ð¸ÐºÐ¾ÑиÑÑано Ñимволи ÑозÑÐ¸Ð²Ñ ÑÑдкÑв Unix:
unix2dos -ic *.txt
ÐеÑеÑвоÑиÑи лиÑе Ñайли Ñз ÑозÑивами ÑÑдкÑв DOS Ñ Ð½Ðµ ÑÑпаÑи ÑнÑÐ¸Ñ ÑайлÑв:
dos2unix -ic0 *.txt | xargs -0 dos2unix
ÐнайÑи ÑекÑÑÐ¾Ð²Ñ Ñайли Ñ ÑозÑивами ÑÑдкÑв DOS:
find -name '*.txt' -print0 | xargs -0 dos2unix -ic
ÐбеÑегÑи ÑаÑÐ¾Ð²Ñ Ð¿Ð¾Ð·Ð½Ð°ÑÐºÑ Ñайла Ð²Ñ ÑÐ´Ð½Ð¸Ñ Ð´Ð°Ð½Ð¸Ñ Ñ ÑÐ°Ð¹Ð»Ñ ÑезÑлÑÑаÑÑв пеÑеÑвоÑеннÑ.
ÐивеÑÑи Ñмови лÑÑензÑÐ²Ð°Ð½Ð½Ñ Ð¿ÑогÑами.
ÐÑÑавиÑи додаÑковий Ñимвол ÑозÑÐ¸Ð²Ñ ÑÑдка.
dos2unix: пеÑеÑвоÑÐµÐ½Ð½Ñ Ð½Ð° два Ñимволи ÑозÑÐ¸Ð²Ñ ÑÑдкÑв Unix вÑдбÑваÑимеÑÑÑÑ Ð»Ð¸Ñе Ð´Ð»Ñ ÐºÐ¾Ð¼Ð±ÑнаÑÑй ÑозÑÐ¸Ð²Ñ ÑÑдкÑв DOS. У ÑÐµÐ¶Ð¸Ð¼Ñ Mac виконÑваÑимеÑÑÑÑ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ Ð½Ð° два ÑозÑиви ÑÑдкÑв Unix лиÑе ÑимволÑв ÑозÑÐ¸Ð²Ñ ÑÑдкÑв Mac.
unix2dos: пеÑеÑвоÑÐµÐ½Ð½Ñ Ð½Ð° Ð´Ð²Ñ ÐºÐ¾Ð¼Ð±ÑнаÑÑÑ ÑозÑÐ¸Ð²Ñ ÑÑдкÑв DOS вÑдбÑваÑимеÑÑÑÑ Ð»Ð¸Ñе Ð´Ð»Ñ ÑимволÑв ÑозÑÐ¸Ð²Ñ ÑÑдкÑв DOS. У ÑÐµÐ¶Ð¸Ð¼Ñ Mac виконÑваÑимеÑÑÑÑ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ Ð½Ð° два ÑозÑиви ÑÑдкÑв Mac лиÑе ÑимволÑв ÑозÑÐ¸Ð²Ñ ÑÑдкÑв Unix.
ÐапиÑаÑи до Ñайла ÑезÑлÑÑаÑÑв познаÑÐºÑ Ð¿Ð¾ÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв (BOM). Типово бÑде запиÑано познаÑÐºÑ Ð¿Ð¾ÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв UTF-8.
ЯкÑо Ð´Ð°Ð½Ñ Ð¿Ð¾ÑаÑкового Ñайла закодовано Ñ UTF-16 Ñ Ð²Ð¸ÐºÐ¾ÑиÑÑано паÑамеÑÑ
-u, бÑде допиÑано познаÑÐºÑ Ð¿Ð¾ÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв UTF-16.
Ðе викоÑиÑÑовÑйÑе Ñей паÑамеÑÑ Ð´Ð»Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ñ ÑезÑлÑÑаÑÑв, вÑдмÑÐ½Ð½Ð¸Ñ Ð²Ñд UTF-8, UTF-16 або GB18030. Ðив. Ñакож ÑоздÑл Ñодо UNICODE.
Ðовий Ñежим обÑобки ÑайлÑв. ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ð· Ñайла ÐÐ¥ÐÐÐÐÐ_ФÐÐÐ Ñ Ð·Ð°Ð¿Ð¸ÑаÑи ÑезÑлÑÑаÑи до Ñайла ÐÐÐ¥ÐÐÐÐÐ_ФÐÐÐ. Ðазви ÑайлÑв ÑлÑд вказÑваÑи паÑами, не ÑлÑд викоÑиÑÑовÑваÑи Ñаблони замÑни, ÑнакÑе вмÑÑÑ ÑайлÑв бÑде вÑÑаÑено.
ÐлаÑником пеÑеÑвоÑеного Ñайла бÑде пÑизнаÑено коÑиÑÑÑваÑа, Ñким бÑло
ÑозпоÑаÑо пеÑеÑвоÑÐµÐ½Ð½Ñ Ñ ÑÐµÐ¶Ð¸Ð¼Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ Ñайла (паÑÐ½Ð¾Ð¼Ñ ÑежимÑ). ÐÑава доÑÑÑпÑ
на ÑиÑÐ°Ð½Ð½Ñ Ð°Ð±Ð¾ Ð·Ð°Ð¿Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ Ñайла бÑде визнаÑено на оÑÐ½Ð¾Ð²Ñ Ð¿Ñав доÑÑÑÐ¿Ñ Ð´Ð¾
поÑаÑкового Ñайла мÑнÑÑ umask(1) Ð´Ð»Ñ ÐºÐ¾ÑиÑÑÑваÑа, Ñким бÑло ÑозпоÑаÑо
пеÑеÑвоÑеннÑ.
Don't allow file ownership change in old file mode (default).
Abort conversion when the user and/or group ownership of the original file
can't be preserved in old file mode. See also options -o and -n. This
option is only available if dos2unix has support for preserving the user and
group ownership of files.
ÐаÑÑаÑÑлий Ñежим обÑобки. ÐиконаÑи пеÑеÑвоÑÐµÐ½Ð½Ñ Ñайла ФÐÐÐ Ñ Ð¿ÐµÑезапиÑаÑи його вмÑÑÑ. Типово, пÑогÑама пÑаÑÑÑ Ñ ÑÑÐ¾Ð¼Ñ ÑежимÑ. Ðожна викоÑиÑÑовÑваÑи Ñаблони замÑни.
У заÑÑаÑÑÐ»Ð¾Ð¼Ñ ÑÐµÐ¶Ð¸Ð¼Ñ (ÑÐµÐ¶Ð¸Ð¼Ñ Ð·Ð°Ð¼ÑÑеннÑ) пеÑеÑвоÑений Ñайл належаÑиме ÑÐ¾Ð¼Ñ ÑÐ°Ð¼Ð¾Ð¼Ñ Ð²Ð»Ð°ÑÐ½Ð¸ÐºÑ Ñ Ð³ÑÑÐ¿Ñ Ñ Ð¼Ð°Ñиме ÑÑ ÑÐ°Ð¼Ñ Ð¿Ñава доÑÑÑÐ¿Ñ Ð½Ð° ÑиÑÐ°Ð½Ð½Ñ Ð°Ð±Ð¾ запиÑ, Ñо Ñ Ð¿Ð¾ÑаÑковий Ñайл. ÐÑÑм Ñого, ÑкÑо пеÑеÑвоÑÐµÐ½Ð½Ñ Ñайла виконÑÑÑÑÑÑ ÑнÑим коÑиÑÑÑваÑем, Ñкий Ð¼Ð°Ñ Ð¿Ñава доÑÑÑÐ¿Ñ Ð½Ð° Ð·Ð°Ð¿Ð¸Ñ Ð´Ð¾ Ñайла (напÑиклад коÑиÑÑÑваÑем root), пеÑеÑвоÑÐµÐ½Ð½Ñ Ð±Ñде пеÑеÑвано, ÑкÑо збеÑегÑи поÑаÑÐºÐ¾Ð²Ñ Ð·Ð½Ð°ÑÐµÐ½Ð½Ñ Ð½Ðµ вдаÑÑÑÑÑ. ÐмÑна влаÑника може ознаÑаÑи неможливÑÑÑÑ ÑиÑÐ°Ð½Ð½Ñ Ñайла Ð´Ð»Ñ Ð¹Ð¾Ð³Ð¾ поÑаÑкового влаÑника. ÐмÑна гÑÑпи може пÑизвеÑÑи до пÑоблем Ñз безпекоÑ, оÑкÑлÑки Ñайл може ÑÑаÑи доÑÑÑпним Ð´Ð»Ñ ÑиÑÐ°Ð½Ð½Ñ ÐºÐ¾ÑиÑÑÑваÑам, ÑÐºÑ Ð½Ðµ Ð¿Ð¾Ð²Ð¸Ð½Ð½Ñ Ð¼Ð°Ñи ÑÐ°ÐºÑ Ð¿Ñава доÑÑÑпÑ. ÐожливÑÑÑÑ Ð·Ð±ÐµÑÐµÐ¶ÐµÐ½Ð½Ñ Ð¿Ñав влаÑноÑÑÑ Ñа пÑав доÑÑÑÐ¿Ñ Ð´Ð¾ Ñайла пеÑедбаÑено лиÑе Ñ Unix.
To check if dos2unix has support for preserving the user and group ownership
of files type dos2unix -V.
Conversion is always done via a temporary file. When an error occurs halfway
the conversion, the temporary file is deleted and the original file stays
intact. When the conversion is successful, the original file is replaced
with the temporary file. You may have write permission on the original file,
but no permission to put the same user and/or group ownership properties on
the temporary file as the original file has. This means you are not able to
preserve the user and/or group ownership of the original file. In this case
you can use option --allow-chown to continue with the conversion:
dos2unix --allow-chown foo.txt
Another option is to use new file mode:
dos2unix -n foo.txt foo.txt
The advantage of the --allow-chown option is that you can use wildcards,
and the ownership properties will be preserved when possible.
Режим без Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Ð¿Ð¾Ð²ÑдомленÑ. ÐÑогÑама не виводиÑиме Ð¶Ð¾Ð´Ð½Ð¸Ñ Ð¿Ð¾Ð¿ÐµÑÐµÐ´Ð¶ÐµÐ½Ñ Ð°Ð±Ð¾ повÑÐ´Ð¾Ð¼Ð»ÐµÐ½Ñ Ð¿Ñо помилки. ÐовеÑнÑÑим знаÑеннÑм завжди бÑде нÑлÑ, ÑкÑо вказано пÑавилÑÐ½Ñ Ð¿Ð°ÑамеÑÑи командного ÑÑдка.
ÐилÑÑиÑи познаÑÐºÑ Ð¿Ð¾ÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв (BOM). Ðе запиÑÑваÑи BOM до Ñайла
ÑезÑлÑÑаÑÑв. Це Ñипова поведÑнка пÑд ÑÐ°Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ ÑайлÑв з ÑоÑмаÑом
ÑозÑÐ¸Ð²Ñ ÑÑдкÑв Unix. Ðив. Ñакож паÑамеÑÑ -b.
ÐÑопÑÑкаÑи двÑÐ¹ÐºÐ¾Ð²Ñ Ñайли (Ñипово).
ÐÑопÑÑÐºÐ°Ð½Ð½Ñ Ð±ÑнаÑÐ½Ð¸Ñ ÑайлÑв ÑеалÑзовано Ð´Ð»Ñ Ñого, Ñоб ÑникнÑÑи Ð²Ð¸Ð¿Ð°Ð´ÐºÐ¾Ð²Ð¸Ñ Ð¿Ð¾Ð¼Ð¸Ð»Ð¾Ðº. ÐайÑе на ÑвазÑ, Ñо визнаÑÐµÐ½Ð½Ñ Ð±ÑнаÑÐ½Ð¸Ñ ÑайлÑв не Ñ 100% ÑоÑним. ÐÑогÑама пÑоÑÑо ÑÑÐºÐ°Ñ Ñ ÑÐ°Ð¹Ð»Ð°Ñ Ð±ÑнаÑÐ½Ñ Ñимволи, ÑÐºÑ Ñипово не ÑÑаплÑÑÑÑÑÑ Ñ ÑекÑÑÐ¾Ð²Ð¸Ñ ÑÐ°Ð¹Ð»Ð°Ñ . Ðоже Ñак ÑÑаÑиÑÑ, Ñо Ñ Ð±ÑнаÑÐ½Ð¾Ð¼Ñ ÑÐ°Ð¹Ð»Ñ Ð¼ÑÑÑÑÑÑÑÑ Ð»Ð¸Ñе звиÑÐ°Ð¹Ð½Ñ ÑекÑÑÐ¾Ð²Ñ Ñимволи. Такий бÑнаÑний Ñайл бÑде помилково ÑпÑийнÑÑо пÑогÑÐ°Ð¼Ð¾Ñ Ñк ÑекÑÑовий.
ÐбеÑегÑи поÑаÑкове кодÑÐ²Ð°Ð½Ð½Ñ UTF-16. Файл ÑезÑлÑÑаÑÑв бÑде запиÑано Ñ ÑомÑ
ÑÐ°Ð¼Ð¾Ð¼Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-16, Ñз пÑÑмим або звоÑоÑним поÑÑдком байÑÑв, Ñо Ñ
поÑаÑковий Ñайл. Таким Ñином можна запобÑгÑи пеÑеÑвоÑÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ
Ñ ÐºÐ¾Ð´ÑваннÑ
UTF-8. Ðо Ñайла бÑде запиÑано вÑдповÑÐ´Ð½Ñ Ð¿Ð¾Ð·Ð½Ð°ÑÐºÑ Ð¿Ð¾ÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв
UTF-16. ÐимкнÑÑи Ñей паÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð° за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Ð¿Ð°ÑамеÑÑа -ascii.
ÐÑипÑÑкаÑи, Ñо кодÑваннÑм Ð²Ñ ÑÐ´Ð½Ð¸Ñ ÑайлÑв Ñ UTF-16LE.
ЯкÑо Ñ Ð¿Ð¾ÑаÑÐºÐ¾Ð²Ð¾Ð¼Ñ ÑÐ°Ð¹Ð»Ñ Ñ Ð¿Ð¾Ð·Ð½Ð°Ñка поÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв (BOM), ÑÑ Ð±Ñде викоÑиÑÑано Ñ ÑайлÑ-ÑезÑлÑÑаÑÑ, незалежно вÑд викоÑиÑÑÐ°Ð½Ð½Ñ ÑÑого паÑамеÑÑа.
ЯкÑо вами бÑло зÑоблено помилкове пÑипÑÑÐµÐ½Ð½Ñ Ñодо ÑоÑмаÑÑ Ñайла (Ñайл
вÑ
ÑдниÑ
даниÑ
наÑпÑÐ°Ð²Ð´Ñ Ð½Ðµ Ñ Ñайлом Ñ ÑоÑмаÑÑ UTF-16LE), Ñ Ð´Ð°Ð½Ñ Ð²Ð´Ð°ÑÑÑÑÑ
ÑÑпÑÑно пеÑеÑвоÑиÑи, ви оÑÑимаÑÑе Ñайл Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-8 з помилковим
вмÑÑÑом. СкаÑÑваÑи Ñаке помилкове пеÑеÑвоÑÐµÐ½Ð½Ñ Ð¼Ð¾Ð¶Ð½Ð° за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Ð·Ð²Ð¾ÑоÑного
пеÑеÑвоÑÐµÐ½Ð½Ñ iconv(1) з даниÑ
Ñ ÑоÑмаÑÑ UTF-8 на Ð´Ð°Ð½Ñ Ñ ÑоÑмаÑÑ
UTF-16LE. Таким Ñином ви повеÑнеÑеÑÑ Ð´Ð¾ поÑаÑкового кодÑÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ
Ñ ÑайлÑ.
ÐÑипÑÑÐµÐ½Ð½Ñ Ñодо ÑоÑмаÑÑÐ²Ð°Ð½Ð½Ñ UTF-16LE пÑаÑÑÑ Ñк визнаÑÐµÐ½Ð½Ñ ÑÐµÐ¶Ð¸Ð¼Ñ Ð¿ÐµÑеÑвоÑеннÑ. ÐеÑемиканнÑм на Ñиповий Ñежим ascii можна вимкнÑÑи пÑипÑÑÐµÐ½Ð½Ñ Ñодо ÑоÑмаÑÑÐ²Ð°Ð½Ð½Ñ UTF-16LE.
ÐÑипÑÑкаÑи, Ñо Ð²Ñ Ñдним ÑоÑмаÑом Ñ UTF-16BE.
Цей паÑамеÑÑ Ð¿ÑаÑÑÑ Ñ ÑпоÑÑб, ÑоÑожний до паÑамеÑÑа -ul.
ÐиводиÑи Ð´Ð¾ÐºÐ»Ð°Ð´Ð½Ñ Ð¿Ð¾Ð²ÑдомленнÑ. ÐÑде показано додаÑÐºÐ¾Ð²Ñ Ð´Ð°Ð½Ñ Ñодо познаÑок поÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв Ñа кÑлÑкоÑÑÑ Ð¿ÐµÑеÑвоÑÐµÐ½Ð¸Ñ ÑимволÑв ÑозÑÐ¸Ð²Ñ ÑÑдкÑв.
ÐеÑÐµÑ Ð¾Ð´Ð¸Ñи за ÑимволÑÑними поÑиланнÑм Ñ Ð¿ÐµÑеÑвоÑÑваÑи Ñайли, на ÑÐºÑ Ð²Ð¾Ð½Ð¸ вказÑÑÑÑ.
ÐамÑниÑи ÑимволÑÑÐ½Ñ Ð¿Ð¾ÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð¿ÐµÑеÑвоÑеними Ñайлами (поÑаÑÐºÐ¾Ð²Ñ Ñайли, на ÑÐºÑ Ð²Ð¾Ð½Ð¸ вказÑÑÑÑ, змÑнено не бÑде).
Ðе змÑнÑваÑи ÑимволÑÑÐ½Ñ Ð¿Ð¾ÑÐ¸Ð»Ð°Ð½Ð½Ñ Ñа Ñайли, на ÑÐºÑ Ð²Ð¾Ð½Ð¸ поÑилаÑÑÑÑÑ (Ñипово).
ÐивеÑÑи Ð´Ð°Ð½Ñ Ñодо веÑÑÑÑ Ñ Ð·Ð°Ð²ÐµÑÑиÑи ÑобоÑÑ.
У звиÑÐ°Ð¹Ð½Ð¾Ð¼Ñ ÑÐµÐ¶Ð¸Ð¼Ñ ÑозÑиви ÑÑдкÑв DOS пеÑеÑвоÑÑÑÑÑÑÑ Ð½Ð° ÑозÑиви ÑÑдкÑв Unix, Ñ Ð½Ð°Ð²Ð¿Ð°ÐºÐ¸. РозÑиви ÑÑдкÑв Mac пеÑеÑвоÑÐµÐ½Ð½Ñ Ð½Ðµ пÑдлÑгаÑÑÑ.
У ÑÐµÐ¶Ð¸Ð¼Ñ Mac ÑозÑиви ÑÑдкÑв Mac пеÑеÑвоÑÑÑÑÑÑÑ Ð½Ð° ÑозÑиви ÑÑдкÑв Unix, Ñ Ð½Ð°Ð²Ð¿Ð°ÐºÐ¸. РозÑиви ÑÑдкÑв DOS пеÑеÑвоÑÐµÐ½Ð½Ñ Ð½Ðµ пÑдлÑгаÑÑÑ.
Щоб запÑÑÑиÑи пÑогÑÐ°Ð¼Ñ Ñ ÑÐµÐ¶Ð¸Ð¼Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ Mac, ÑкоÑиÑÑайÑеÑÑ Ð¿Ð°ÑамеÑÑом
командного ÑÑдка -c mac або пÑогÑамами mac2unix Ñа unix2mac.
У ÑÐµÐ¶Ð¸Ð¼Ñ ascii виконÑваÑимеÑÑÑÑ Ð»Ð¸Ñе пеÑеÑвоÑÐµÐ½Ð½Ñ ÑимволÑв ÑозÑивÑ
ÑÑдкÑв. Цей Ñежим Ñ Ñиповим Ñежимом пеÑеÑвоÑеннÑ.
ХоÑа Ñей Ñежим Ñ Ð½Ð°Ð·Ð¸Ð²Ð°ÑÑÑÑÑ Ñежимом ASCII (ÑÑандаÑÑÑ 7-бÑÑового кодÑваннÑ), наÑпÑÐ°Ð²Ð´Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ ÑимволÑв Ñ Ð½ÑÐ¾Ð¼Ñ Ñ 8-бÑÑовим. Ðавжди коÑиÑÑÑйÑеÑÑ Ñим Ñежимом Ð´Ð»Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ ÑайлÑв Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-8 (Unicode).
У ÑÑÐ¾Ð¼Ñ ÑÐµÐ¶Ð¸Ð¼Ñ ÑÑÑ 8-бÑÑÐ¾Ð²Ñ Ñимволи, ÑÐºÑ Ð½Ðµ Ñ ÑаÑÑÐ¸Ð½Ð¾Ñ ASCII, (з номеÑами вÑд 128 до 255) бÑде пеÑеÑвоÑено на вÑдповÑÐ´Ð½Ñ 7-бÑÑÐ¾Ð²Ñ Ñимволи.
ÐеÑеÑвоÑÐµÐ½Ð½Ñ ÑимволÑв бÑде виконано з кодÑÐ²Ð°Ð½Ð½Ñ (ÐºÐ¾Ð´Ð¾Ð²Ð¾Ñ ÑÑоÑÑнки) DOS до кодÑÐ²Ð°Ð½Ð½Ñ ISO-8859-1 (Latin-1) Ñ Unix. Символи DOS, ÑÐºÑ Ð½Ðµ маÑÑÑ ÐµÐºÐ²ÑваленÑÑв Ñ ISO-8859-1 Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ ÑÐºÐ¸Ñ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ðµ, бÑде пеÑеÑвоÑено на Ñимвол кÑапки. Те Ñаме ÑÑоÑÑÑÑÑÑÑ ÑимволÑв ISO-8859-1, ÑÐºÑ Ð½Ðµ маÑÑÑ ÐµÐºÐ²ÑваленÑÑв Ñ DOS.
ЯкÑо бÑде викоÑиÑÑано лиÑе паÑамеÑÑ -iso, пÑогÑама dos2unix ÑпÑобÑÑ
визнаÑиÑи акÑивне кодÑваннÑ. ЯкÑо Ñе виÑвиÑÑÑÑ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ð¸Ð¼, dos2unix
викоÑиÑÑÐ°Ñ Ñипове кодÑÐ²Ð°Ð½Ð½Ñ CP437, Ñке здебÑлÑÑого викоÑиÑÑовÑÑÑÑÑÑ Ñ
СШÐ. Щоб пÑимÑÑово визнаÑиÑи кодÑваннÑ, ÑкоÑиÑÑайÑеÑÑ Ð¿Ð°ÑамеÑÑом -437
(СШÐ), -850 (заÑ
ÑдноÑвÑопейÑÑÐºÑ Ð¼Ð¾Ð²Ð¸), -860 (поÑÑÑгалÑÑÑка), -863
(канадÑÑка ÑÑанÑÑзÑка) або -865 (ÑкандинавÑÑÐºÑ Ð¼Ð¾Ð²Ð¸). ÐикоÑиÑÑаÑи
кодÑÐ²Ð°Ð½Ð½Ñ Windows CP1252 (заÑ
ÑдноÑвÑопейÑÑÐºÑ Ð¼Ð¾Ð²Ð¸) можна за допомогоÑ
паÑамеÑÑа -1252. ÐÐ»Ñ ÑнÑиÑ
кодÑÐ²Ð°Ð½Ñ Ð²Ð¸ÐºÐ¾ÑиÑÑовÑйÑе поÑÐ´Ð½Ð°Ð½Ð½Ñ dos2unix з
iconv(1). ÐÑогÑама iconv здаÑна виконÑваÑи пеÑеÑвоÑÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ
Ñ Ð´Ð¾Ð²Ð¾Ð»Ñ
ÑиÑÐ¾ÐºÐ¾Ð¼Ñ ÑпекÑÑÑ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ñ ÑимволÑв.
ÐÑколи не коÑиÑÑÑйÑеÑÑ Ð¿ÐµÑеÑвоÑеннÑм ISO Ð´Ð»Ñ ÑекÑÑÐ¾Ð²Ð¸Ñ ÑайлÑв Ñ ÑоÑмаÑÑ Unicode. ÐикоÑиÑÑÐ°Ð½Ð½Ñ Ð¿Ð¾Ð´Ñбного пеÑеÑвоÑÐµÐ½Ð½Ñ Ð¿Ñизведе до ÑÑÐºÐ¾Ð´Ð¶ÐµÐ½Ð½Ñ Ð²Ð¼ÑÑÑÑ ÑайлÑв Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-8.
ÐекÑлÑка пÑикладÑв:
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÑÐ¸Ð¿Ð¾Ð²Ð¾Ð¼Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ DOS на Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Latin-1 Unix:
dos2unix -iso -n in.txt out.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ DOS CP850 на Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Latin-1 Unix:
dos2unix -850 -n in.txt out.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ CP1252 Windows на Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Latin-1 Unix:
dos2unix -1252 -n in.txt out.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ CP252 Windows на Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-8 Unix (Unicode):
iconv -f CP1252 -t UTF-8 in.txt | dos2unix > out.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Latin-1 Unix на Ð´Ð°Ð½Ñ Ñ ÑÐ¸Ð¿Ð¾Ð²Ð¾Ð¼Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ DOS:
unix2dos -iso -n in.txt out.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Latin-1 Unix на Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ DOS CP850:
unix2dos -850 -n in.txt out.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Latin-1 Unix на Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Windows CP1252:
unix2dos -1252 -n in.txt out.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-8 Unix (Unicode) на Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Windows CP1252:
unix2dos < in.txt | iconv -f UTF-8 -t CP1252 > out.txt
Ðив. Ñакож http://czyborra.com/charsets/codepages.html Ñа http://czyborra.com/charsets/iso8859.html.
ÐÑнÑÑ Ð´ÐµÐºÑлÑка ÑÑÐ·Ð½Ð¸Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ñ Unicode. У Unix Ñа Linux Ñ ÑÐ°Ð¹Ð»Ð°Ñ Unicode здебÑлÑÑого викоÑиÑÑовÑÑÑÑÑÑ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-8. У Windows Ð´Ð»Ñ ÑекÑÑÐ¾Ð²Ð¸Ñ ÑайлÑв Unicode може бÑÑи викоÑиÑÑано кодÑÐ²Ð°Ð½Ð½Ñ UTF-8, UTF-16 або UTF-16 Ð·Ñ Ð·Ð²Ð¾ÑоÑним поÑÑдком байÑÑв. ÐÑÑм, здебÑлÑÑого, викоÑиÑÑовÑÑÑÑÑÑ ÑоÑÐ¼Ð°Ñ UTF-16.
У ÑекÑÑÐ¾Ð²Ð¸Ñ ÑÐ°Ð¹Ð»Ð°Ñ Unicode, Ñк Ñ Ñ Ð·Ð²Ð¸ÑÐ°Ð¹Ð½Ð¸Ñ ÑекÑÑÐ¾Ð²Ð¸Ñ ÑÐ°Ð¹Ð»Ð°Ñ , може бÑÑи викоÑиÑÑано ÑозÑиви ÑÑдкÑв DOS, Unix або Mac.
УÑÑ Ð²ÐµÑÑÑÑ dos2unix Ñа unix2dos здаÑÐ½Ñ Ð²Ð¸ÐºÐ¾Ð½ÑваÑи пеÑеÑвоÑÐµÐ½Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-8, оÑкÑлÑки UTF-8 бÑло ÑозÑоблено Ñак, Ñо звоÑоÑÐ½Ñ ÑÑмÑÑнÑÑÑÑ Ð· ASCII збеÑежено.
ÐÑогÑами dos2unix Ñа unix2dos, зÑбÑÐ°Ð½Ñ Ð· пÑдÑÑÐ¸Ð¼ÐºÐ¾Ñ Unicode UTF-16, можÑÑÑ
ÑиÑаÑи ÑекÑÑÐ¾Ð²Ñ Ñайли Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-16 з пÑÑмим Ñа звоÑоÑним поÑÑдком
байÑÑв. Щоб дÑзнаÑиÑÑ Ð¿Ñо Ñе, Ñи бÑло dos2unix зÑбÑано з пÑдÑÑÐ¸Ð¼ÐºÐ¾Ñ UTF-16,
вÑддайÑе ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ dos2unix -V.
У Unix/Linux Ñайли Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-16 пеÑеÑвоÑÑÑÑÑÑÑ Ð½Ð° Ñайли Ñ ÐºÐ¾Ð´ÑваннÑ
локалÑ. ÐÐ»Ñ Ð²Ð¸Ð·Ð½Ð°ÑÐµÐ½Ð½Ñ Ð¿Ð¾ÑоÑного кодÑÐ²Ð°Ð½Ð½Ñ ÑимволÑв Ð»Ð¾ÐºÐ°Ð»Ñ ÑкоÑиÑÑайÑеÑÑ
ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ñ locale(1). ЯкÑо пеÑеÑвоÑÐµÐ½Ð½Ñ Ð²Ð¸ÑвиÑÑÑÑ Ð½ÐµÐ¼Ð¾Ð¶Ð»Ð¸Ð²Ð¸Ð¼, пÑогÑама
повÑдомиÑÑ Ð¿Ñо Ð¿Ð¾Ð¼Ð¸Ð»ÐºÑ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ Ñ Ð¿ÑопÑÑÑиÑÑ Ð²ÑдповÑдний Ñайл.
У Windows Ñайли UTF-16 Ñипово бÑде пеÑеÑвоÑено на Ñайли UTF-8. Ðбидва Ñипи ÑиÑÑем, Windows Ñа Unix/Linux, маÑÑÑ Ð½ÐµÐ¿Ð¾Ð³Ð°Ð½Ñ Ð¼Ð¾Ð¶Ð»Ð¸Ð²Ð¾ÑÑÑ Ð· пÑдÑÑимки ÑайлÑв Ñ ÑоÑмаÑÑÐ²Ð°Ð½Ð½Ñ UTF-8.
ÐодÑÐ²Ð°Ð½Ð½Ñ UTF-16 Ñа UTF-8 Ñ Ð¿Ð¾Ð²Ð½ÑÑÑÑ ÑÑмÑÑними. ÐÑд ÑÐ°Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ Ð½Ðµ бÑде вÑÑаÑено Ð¶Ð¾Ð´Ð½Ð¾Ñ ÑнÑоÑмаÑÑÑ. ЯкÑо пÑд ÑÐ°Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-16 на Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-8 ÑÑапиÑÑÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°, напÑиклад, ÑкÑо Ñ Ð²Ñ ÑÐ´Ð½Ð¾Ð¼Ñ ÑÐ°Ð¹Ð»Ñ UTF-16 мÑÑÑиÑимеÑÑÑÑ ÑкаÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ°, Ñайл бÑде пÑопÑÑено.
ЯкÑо викоÑиÑÑано паÑамеÑÑ -u, Ñайл ÑезÑлÑÑаÑÑв бÑде запиÑано Ñ ÑомÑ
ÑÐ°Ð¼Ð¾Ð¼Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-16, Ñо Ñ Ð¿Ð¾ÑаÑковий Ñайл. ÐикоÑиÑÑÐ°Ð½Ð½Ñ Ð¿Ð°ÑамеÑÑа Option
-u запобÑÐ³Ð°Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ
Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-8.
У dos2unix Ñа unix2dos не пеÑедбаÑено паÑамеÑÑа Ð´Ð»Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-8 на Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-16.
Режим пеÑеÑвоÑÐµÐ½Ð½Ñ ISO Ñа 7-бÑÑовий Ñежим не пÑаÑÑÑÑÑ Ð´Ð»Ñ ÑайлÑв UTF-16.
У Windows до ÑекÑÑÐ¾Ð²Ð¸Ñ ÑайлÑв Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Unicode Ñипово допиÑÑÑÑÑÑÑ Ð¿Ð¾Ð·Ð½Ð°Ñка поÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв (BOM), оÑкÑлÑки багаÑо пÑогÑам Windows (зокÑема Notepad) додаÑÑÑ ÑÐ°ÐºÑ Ð¿Ð¾Ð·Ð½Ð°ÑÐºÑ Ð°Ð²ÑомаÑиÑно. Ðив. Ñакож http://en.wikipedia.org/wiki/Byte_order_mark.
У Unix Ñайли Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Unicode Ñипово не мÑÑÑÑÑÑ Ð¿Ð¾Ð·Ð½Ð°Ñки поÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв. ÐважаÑÑÑÑÑ, Ñо кодÑваннÑм ÑекÑÑÐ¾Ð²Ð¸Ñ ÑайлÑв Ñ Ñе кодÑваннÑ, Ñке визнаÑаÑÑÑÑÑ Ð¿Ð¾ÑоÑÐ½Ð¾Ñ Ð»Ð¾ÐºÐ°Ð»Ð»Ñ.
ÐÑогÑама dos2unix може визнаÑиÑи, Ñи Ñ ÐºÐ¾Ð´ÑваннÑм Ñайла UTF-16, лиÑе ÑкÑо Ñ ÑÐ°Ð¹Ð»Ñ Ð¼ÑÑÑиÑÑÑÑ Ð¿Ð¾Ð·Ð½Ð°Ñка поÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв. ЯкÑо Ñ ÑайлÑ, де викоÑиÑÑано кодÑÐ²Ð°Ð½Ð½Ñ UTF-16, Ð½ÐµÐ¼Ð°Ñ ÑÐ°ÐºÐ¾Ñ Ð¿Ð¾Ð·Ð½Ð°Ñки, dos2unix вважаÑиме Ñакий Ñайл двÑйковим (бÑнаÑним).
ÐÐ»Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ ÑайлÑв UTF-16 без познаÑки поÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв ÑкоÑиÑÑайÑеÑÑ
паÑамеÑÑом -ul або -ub.
Типово dos2unix не запиÑÑÑ Ð´Ð¾ ÑайлÑв ÑезÑлÑÑаÑÑв пеÑеÑвоÑÐµÐ½Ð½Ñ Ð¿Ð¾Ð·Ð½Ð°Ñки
поÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв (BOM). ЯкÑо викоÑиÑÑано паÑамеÑÑ -b, dos2unix запиÑе до
Ñайла ÑезÑлÑÑаÑÑв BOM, ÑкÑо BOM бÑла Ñ ÑÐ°Ð¹Ð»Ñ Ð¿Ð¾ÑаÑковиÑ
даниÑ
.
Типово unix2dos запиÑÑÑ Ð¿Ð¾Ð·Ð½Ð°ÑÐºÑ Ð¿Ð¾ÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв (BOM) до Ñайла ÑезÑлÑÑаÑÑв,
ÑкÑо BOM Ñ Ñ Ð¿Ð¾ÑаÑÐºÐ¾Ð²Ð¾Ð¼Ñ ÑайлÑ. СкоÑиÑÑайÑеÑÑ Ð¿Ð°ÑамеÑÑом -r, Ñоб вилÑÑиÑи
BOM.
Dos2unix Ñа unix2dos завжди запиÑÑÑÑÑ Ð´Ð¾ Ñайла ÑезÑлÑÑаÑÑв познаÑÐºÑ Ð¿Ð¾ÑÑдкÑ
байÑÑв (BOM), ÑкÑо викоÑиÑÑано паÑамеÑÑ -m.
У dos2unix пеÑедбаÑено пÑдÑÑÐ¸Ð¼ÐºÑ ÑиÑÐ°Ð½Ð½Ñ Ñ Ð·Ð°Ð¿Ð¸ÑÑ Ð½Ð°Ð·Ð² ÑайлÑв Unicode Ñ
ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð¾Ð¼Ñ ÑÑÐ´ÐºÑ Windows. Це ознаÑаÑ, Ñо dos2unix може вÑдкÑиваÑи Ñайли, Ñ
назваÑ
ÑкиÑ
Ñ Ñимволи, ÑÐºÑ Ð½Ðµ Ñ ÑаÑÑÐ¸Ð½Ð¾Ñ ÑÐ¸Ð¿Ð¾Ð²Ð¾Ñ ÑиÑÑÐµÐ¼Ð½Ð¾Ñ ÐºÐ¾Ð´Ð¾Ð²Ð¾Ñ ÑÑоÑÑнки
ANSI. Щоб визнаÑиÑи, Ñи зÑбÑано dos2unix Ð´Ð»Ñ Windows з пÑдÑÑÐ¸Ð¼ÐºÐ¾Ñ Ð½Ð°Ð·Ð²
ÑайлÑв Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Unicode, ÑкоÑиÑÑайÑеÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ñ dos2unix -V.
Ðз показом назв ÑайлÑв Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Unicode Ñ ÐºÐ¾Ð½ÑÐ¾Ð»Ñ Windows повâÑзано
декÑлÑка пÑоблем. Ðив. паÑамеÑÑ -D, --display-enc. Ðазви ÑайлÑв може
бÑÑи некоÑекÑно показано Ñ ÐºÐ¾Ð½ÑолÑ, але Ð·Ð°Ð¿Ð¸Ñ ÑиÑ
назв вÑдбÑваÑимеÑÑÑÑ
належним Ñином.
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ð· Windows UTF-16 (з познаÑÐºÐ¾Ñ Ð¿Ð¾ÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв (BOM)) Ñ ÑоÑÐ¼Ð°Ñ Unix UTF-8:
dos2unix -n in.txt out.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÑоÑмаÑÑ Windows UTF-16LE (без BOM) на Ð´Ð°Ð½Ñ Ñ ÑоÑмаÑÑ UTF-8 Unix:
dos2unix -ul -n in.txt out.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-8 Unix на Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Windows UTF-8 без BOM:
unix2dos -m -n in.txt out.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ UTF-8 Unix на Ð´Ð°Ð½Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Windows UTF-16:
unix2dos < in.txt | iconv -f UTF-8 -t UTF-16 > out.txt
GB18030 Ñ ÐºÐ¸ÑайÑÑким ÑÑÑдовим ÑÑандаÑÑом. ÐÑдÑÑимка обовâÑÐ·ÐºÐ¾Ð²Ð¾Ñ Ð¿Ñдмножини ÑÑандаÑÑÑ GB18030 Ñ Ð½ÐµÐ¾Ð´Ð¼ÑÐ½Ð½Ð¾Ñ Ð²Ð¸Ð¼Ð¾Ð³Ð¾Ñ Ð´Ð¾ бÑдÑ-ÑÐºÐ¸Ñ Ð¿ÑогÑÐ°Ð¼Ð½Ð¸Ñ Ð¿ÑодÑкÑÑв, ÑÐºÑ Ð¿ÑодаÑÑÑÑÑ Ñ ÐиÑаÑ. Ðив. Ñакож http://en.wikipedia.org/wiki/GB_18030.
ÐодÑÐ²Ð°Ð½Ð½Ñ GB18030 Ñ Ð¿Ð¾Ð²Ð½ÑÑÑÑ ÑÑмÑÑним Ñз Unicode. Ðого можна ÑозглÑдаÑи Ñк ÑоÑÐ¼Ð°Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ unicode. ÐодÑбно до UTF-8, GB18030 Ñ ÑÑмÑÑним Ñз ASCII. GB18030 Ñакож Ñ ÑÑмÑÑним Ñз ÐºÐ¾Ð´Ð¾Ð²Ð¾Ñ ÑÑоÑÑÐ½ÐºÐ¾Ñ Windows 936, ÑÐºÑ Ñе називаÑÑÑ GBK.
У Unix/Linux Ñайли UTF-16 бÑде пеÑеÑвоÑено до кодÑÐ²Ð°Ð½Ð½Ñ GB18030, ÑкÑо
кодÑваннÑм Ð»Ð¾ÐºÐ°Ð»Ñ Ñ GB18030. ÐаÑважÑе, Ñо Ñе ÑпÑаÑÑÑ, лиÑе ÑкÑо пÑдÑÑимкÑ
Ð»Ð¾ÐºÐ°Ð»Ñ Ð¿ÐµÑедбаÑено Ñ ÑиÑÑемÑ. Щоб оÑÑимаÑи ÑпиÑок пÑдÑÑимÑваниÑ
локалей,
ÑкоÑиÑÑайÑеÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ñ locale -a.
У Windows Ð´Ð»Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ ÑайлÑв UTF-16 на Ñайли GB18030 ÑлÑд вказаÑи
паÑамеÑÑ -gb.
У ÑÐ°Ð¹Ð»Ð°Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ GB18030 може мÑÑÑиÑиÑÑ Ð¿Ð¾Ð·Ð½Ð°Ñка поÑÑÐ´ÐºÑ Ð±Ð°Ð¹ÑÑв, Ñак Ñамо, Ñк Ñ ÑÐ°Ð¹Ð»Ð°Ñ Ñ ÐºÐ¾Ð´ÑÐ²Ð°Ð½Ð½Ñ Unicode.
ÐÑоÑиÑаÑи Ð²Ñ ÑÐ´Ð½Ñ Ð´Ð°Ð½Ñ Ð·Ñ ÑÑандаÑÑного джеÑела (stdin) Ñ Ð·Ð°Ð¿Ð¸ÑаÑи ÑезÑлÑÑÐ°Ñ Ð´Ð¾ ÑÑандаÑÑного Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ (stdout):
dos2unix < a.txt
cat a.txt | dos2unix
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ a.txt Ñ Ð·Ð°Ð¼ÑÑÑиÑи Ñей Ñайл. ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ b.txt Ñ Ð·Ð°Ð¼ÑÑÑиÑи Ñей Ñайл:
dos2unix a.txt b.txt
dos2unix -o a.txt b.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ a.txt Ñ Ð·Ð°Ð¼ÑÑÑиÑи Ñайл Ñ ÑÐµÐ¶Ð¸Ð¼Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ ascii:
dos2unix a.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ a.txt Ñ Ð·Ð°Ð¼ÑÑÑиÑи Ñайл Ñ ÑÐµÐ¶Ð¸Ð¼Ñ Ð¿ÐµÑеÑвоÑÐµÐ½Ð½Ñ ascii. ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ b.txt Ñ Ð·Ð°Ð¼ÑÑÑиÑи Ñей Ñайл Ñ ÑÐµÐ¶Ð¸Ð¼Ñ 7-бÑÑового пеÑеÑвоÑеннÑ:
dos2unix a.txt -c 7bit b.txt
dos2unix -c ascii a.txt -c 7bit b.txt
dos2unix -ascii a.txt -7 b.txt
ÐеÑеÑвоÑиÑи Ñайл a.txt з ÑоÑмаÑÑ Mac на ÑоÑÐ¼Ð°Ñ Unix:
dos2unix -c mac a.txt
mac2unix a.txt
ÐеÑеÑвоÑиÑи Ñайл a.txt з ÑоÑмаÑÑ Unix на ÑоÑÐ¼Ð°Ñ Mac:
unix2dos -c mac a.txt
unix2mac a.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ a.txt, замÑÑÑиÑи Ñей Ñайл Ñ Ð·Ð±ÐµÑегÑи ÑаÑÐ¾Ð²Ñ Ð¿Ð¾Ð·Ð½Ð°ÑÐºÑ Ð¿Ð¾ÑаÑкового Ñайла:
dos2unix -k a.txt
dos2unix -k -o a.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÑÐ°Ð¹Ð»Ñ a.txt Ñ Ð·Ð°Ð¿Ð¸ÑаÑи ÑезÑлÑÑаÑи до Ñайла e.txt:
dos2unix -n a.txt e.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ ÑÐ°Ð¹Ð»Ñ a.txt Ñ Ð·Ð°Ð¿Ð¸ÑаÑи ÑезÑлÑÑаÑи до Ñайла e.txt. СкопÑÑваÑи ÑаÑÐ¾Ð²Ñ Ð¿Ð¾Ð·Ð½Ð°ÑÐºÑ Ñайла a.txt Ð´Ð»Ñ Ñайла e.txt:
dos2unix -k -n a.txt e.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ a.txt Ñ Ð·Ð°Ð¼ÑÑÑиÑи Ñей Ñайл. ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ b.txt Ñ Ð·Ð°Ð¿Ð¸ÑаÑи ÑезÑлÑÑÐ°Ñ Ð´Ð¾ e.txt:
dos2unix a.txt -n b.txt e.txt
dos2unix -o a.txt -n b.txt e.txt
ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ c.txt Ñ Ð·Ð°Ð¿Ð¸ÑаÑи ÑезÑлÑÑаÑи до e.txt. ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ a.txt Ñ Ð·Ð°Ð¼ÑÑÑиÑи ними Ñей Ñайл. ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ b.txt Ñ Ð·Ð°Ð¼ÑÑÑиÑи ними Ñей Ñайл. ÐеÑеÑвоÑиÑи Ð´Ð°Ð½Ñ Ñ d.txt Ñ Ð·Ð°Ð¿Ð¸ÑаÑи ÑезÑлÑÑаÑи до f.txt:
dos2unix -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt
У оболонÑÑ UNIX можна ÑкоÑиÑÑаÑиÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð°Ð¼Ð¸ 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 {} \;
У ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð¾Ð¼Ñ ÑÑÐ´ÐºÑ Windows можна ÑкоÑиÑÑаÑиÑÑ ÑÐ°ÐºÐ¾Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ñ:
for /R %G in (*.txt) do dos2unix "%G"
ÐоÑиÑÑÑваÑÑ PowerShell можÑÑÑ ÑкоÑиÑÑаÑиÑÑ ÑÐ°ÐºÐ¾Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ñ Ñ Windows PowerShell:
get-childitem -path . -filter '*.txt' -recurse | foreach-object {dos2unix $_.Fullname}
ÐÑновна мова визнаÑаÑÑÑÑÑ Ð·Ð° Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Ð·Ð¼ÑÐ½Ð½Ð¾Ñ ÑеÑедовиÑа LANG. ÐнаÑÐµÐ½Ð½Ñ Ð·Ð¼ÑÐ½Ð½Ð¾Ñ LANG ÑкладаÑÑÑÑÑ Ð· декÑлÑÐºÐ¾Ñ ÑаÑÑин. ÐеÑÑа ÑаÑÑина запиÑÑÑÑÑÑÑ Ð¼Ð°Ð»Ð¸Ð¼Ð¸ лÑÑеÑами Ñ Ð²Ð¸Ð·Ð½Ð°ÑÐ°Ñ ÐºÐ¾Ð´ мови. ÐÑÑга ÑаÑÑина Ñ Ð½ÐµÐ¾Ð±Ð¾Ð²âÑзковоÑ, визнаÑÐ°Ñ ÐºÐ¾Ð´ кÑаÑни Ñ Ð·Ð°Ð¿Ð¸ÑÑÑÑÑÑÑ Ð¿ÑопиÑними лÑÑеÑами, вÑдокÑемлÑÑÑÑÑÑ Ð²Ñд пеÑÑÐ¾Ñ ÑаÑÑини Ñимволом пÑдкÑеÑлÑваннÑ. ÐеÑедбаÑено Ñакож необовâÑÐ·ÐºÐ¾Ð²Ñ ÑÑеÑÑ ÑаÑÑинÑ: кодÑваннÑ. Ð¦Ñ ÑаÑÑина вÑдокÑемлÑÑÑÑÑÑ Ð²Ñд дÑÑÐ³Ð¾Ñ ÑаÑÑини кÑапкоÑ. ÐÑÑ Ð´ÐµÐºÑлÑка пÑикладÑв Ð´Ð»Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð¸Ñ Ð¾Ð±Ð¾Ð»Ð¾Ð½Ð¾Ðº ÑÑандаÑÑного ÑÐ¸Ð¿Ñ POSIX:
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
Ðовний ÑпиÑок мов Ñа кодÑв кÑаÑн наведено Ñ Ð¿ÑдÑÑÑÐ½Ð¸ÐºÑ Ð· gettext: http://www.gnu.org/software/gettext/manual/html_node/Usual-Language-Codes.html
У ÑиÑÑемаÑ
Unix Ð´Ð»Ñ Ð¾ÑÑÐ¸Ð¼Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ñ
Ñодо Ð»Ð¾ÐºÐ°Ð»Ñ Ð¼Ð¾Ð¶Ð½Ð° ÑкоÑиÑÑаÑиÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ñ
locale(1).
Ðа Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Ð·Ð¼ÑÐ½Ð½Ð¾Ñ ÑеÑедовиÑа LANGUAGE ви можеÑе вказаÑи ÑпиÑок
пÑÑоÑиÑеноÑÑÑ Ð¼Ð¾Ð². ÐапиÑи Ñ ÑпиÑÐºÑ ÑлÑд вÑдокÑемлÑваÑи двокÑапками. ÐÑогÑама
dos2unix Ð½Ð°Ð´Ð°Ñ Ð¿ÐµÑÐµÐ²Ð°Ð³Ñ LANGUAGE над LANG. ÐапÑиклад, пеÑÑа голландÑÑка,
Ð´Ð°Ð»Ñ Ð½ÑмеÑÑка: LANGUAGE=nl:de. СпоÑаÑÐºÑ Ð²Ð°Ð¼ ÑлÑд ÑвÑмкнÑÑи локалÑзаÑÑÑ,
вÑÑановивÑи Ð´Ð»Ñ Ð·Ð¼ÑÐ½Ð½Ð¾Ñ LANG (або LC_ALL) знаÑеннÑ, вÑдмÑнне вÑд «C». ÐалÑ
ви зможеÑе викоÑиÑÑовÑваÑи ÑпиÑок пÑÑоÑиÑеÑноÑÑÑ Ð¼Ð¾Ð² за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Ð·Ð¼ÑнноÑ
LANGUAGE. ÐодаÑÐºÐ¾Ð²Ñ Ð²ÑдомоÑÑÑ Ð¼Ð¾Ð¶Ð½Ð° знайÑи Ñ Ð¿ÑдÑÑÑÐ½Ð¸ÐºÑ Ð· gettext:
http://www.gnu.org/software/gettext/manual/html_node/The-LANGUAGE-variable.html
ЯкÑо вами бÑде вибÑано мовÑ, пеÑÐµÐºÐ»Ð°Ð´Ñ ÑÐºÐ¾Ñ Ð½ÐµÐ¼Ð°Ñ, бÑде показано ÑÑандаÑÑÐ½Ñ Ð¿Ð¾Ð²ÑÐ´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð°Ð½Ð³Ð»ÑйÑÑÐºÐ¾Ñ Ð¼Ð¾Ð²Ð¾Ñ.
ÐмÑÐ½Ð½Ñ LOCALEDIR, вÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ñ Ð¿Ñд ÑÐ°Ñ Ð·Ð±Ð¸ÑÐ°Ð½Ð½Ñ Ð¿ÑогÑами, можна змÑниÑи за
Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Ð·Ð¼ÑÐ½Ð½Ð¾Ñ ÑеÑедовиÑа DOS2UNIX_LOCALEDIR. LOCALEDIR викоÑиÑÑовÑÑÑÑÑÑ
Ð´Ð»Ñ Ð¿Ð¾ÑÑÐºÑ ÑайлÑв пеÑекладÑв. Типовим знаÑеннÑм Ñ ÑиÑÑемаÑ
GNU Ñ
/usr/local/share/locale. ÐеÑеглÑнÑÑи поÑоÑне знаÑÐµÐ½Ð½Ñ Ð·Ð¼ÑÐ½Ð½Ð¾Ñ LOCALEDIR
можна пеÑеглÑнÑÑи за Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¾Ñ Ð¿Ð°ÑамеÑÑа --version.
ÐÑиклад (командна оболонка POSIX):
export DOS2UNIX_LOCALEDIR=$HOME/share/locale
ЯкÑо Ð·Ð°Ð²Ð´Ð°Ð½Ð½Ñ Ð²Ð´Ð°ÑÑÑÑÑ ÑÑпÑÑно виконаÑи, пÑогÑама повеÑне нÑлÑовий код Ð²Ð¸Ñ Ð¾Ð´Ñ. ЯкÑо ÑÑанеÑÑÑÑ ÑиÑÑемна помилка, бÑде повеÑнÑÑо код ÑÑÑÑ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¸. ЯкÑо ÑÑанеÑÑÑÑ ÑкаÑÑ ÑнÑа помилка, бÑде повеÑнÑÑо код 1.
У ÑÐµÐ¶Ð¸Ð¼Ñ Ð±ÐµÐ· повÑÐ´Ð¾Ð¼Ð»ÐµÐ½Ñ Ð¿Ð¾Ð²ÐµÑнÑÑим знаÑеннÑм завжди бÑде нÑлÑ, ÑкÑо вказано пÑавилÑÐ½Ñ Ð¿Ð°ÑамеÑÑи командного ÑÑдка.
http://en.wikipedia.org/wiki/Text_file
http://uk.wikipedia.org/wiki/Carriage_return
http://uk.wikipedia.org/wiki/Newline
http://uk.wikipedia.org/wiki/Unicode
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> (ÑÑпÑовÑдник)
СÑоÑÑнка пÑоекÑÑ: http://waterlan.home.xs4all.nl/dos2unix.html
СÑоÑÑнка на SourceForge: http://sourceforge.net/projects/dos2unix/
file(1) find(1) iconv(1) locale(1) xargs(1)