ນີ້ແມ່ນຄໍາສັ່ງ unix2dos ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນສະຖານີເຮັດວຽກອອນໄລນ໌ຟຣີຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
dos2unix - DOS/Mac ເປັນ Unix ແລະກົງກັນຂ້າມກັບຕົວປ່ຽນຮູບແບບໄຟລ໌ຂໍ້ຄວາມ
ສະຫຼຸບສັງລວມ
dos2unix [ຕົວເລືອກ] [FILE ...] [-n INFILE OUTFILE ...]
unix2dos [ຕົວເລືອກ] [FILE ...] [-n INFILE OUTFILE ...]
ລາຍລະອຽດ
ຊຸດ Dos2unix ປະກອບມີອຸປະກອນຕ່າງໆ "dos2unix" ແລະ "unix2dos" ເພື່ອແປງຂໍ້ຄວາມທໍາມະດາ.
ໄຟລ໌ໃນຮູບແບບ DOS ຫຼື Mac ເປັນຮູບແບບ Unix ແລະໃນທາງກັບກັນ.
ໃນ DOS/Windows text file ການຢຸດແຖວ, ເຊິ່ງເອີ້ນກັນວ່າ newline, ແມ່ນການປະສົມປະສານຂອງສອງ
ຕົວອັກສອນ: ການສົ່ງກັບລົດເມ (CR) ຕິດຕາມດ້ວຍ Line Feed (LF). ໃນ Unix ໄຟລ໌ຂໍ້ຄວາມເປັນແຖວ
break ແມ່ນຕົວລະຄອນດຽວ: Line Feed (LF). ໃນໄຟລ໌ຂໍ້ຄວາມ Mac, ກ່ອນ Mac OS X, a
ການຢຸດແຖວແມ່ນຕົວລະຄອນ Carriage Return (CR). ໃນປັດຈຸບັນ Mac OS ໃຊ້ຮູບແບບ Unix (LF)
ເສັ້ນແບ່ງ.
ນອກຈາກເສັ້ນແບ່ງ Dos2unix ຍັງສາມາດປ່ຽນການເຂົ້າລະຫັດຂອງໄຟລ໌. ສອງສາມຫນ້າລະຫັດ DOS
ສາມາດປ່ຽນເປັນ Unix Latin-1. ແລະໄຟລ໌ Windows Unicode (UTF-16) ສາມາດປ່ຽນເປັນ
ໄຟລ໌ Unix Unicode (UTF-8).
ໄຟລ໌ໄບນາຣີຈະຖືກຂ້າມໂດຍອັດຕະໂນມັດ, ເວັ້ນເສຍແຕ່ການແປງຈະຖືກບັງຄັບ.
ໄຟລ໌ທີ່ບໍ່ປົກກະຕິ, ເຊັ່ນ: ໄດເລກະທໍລີ ແລະ FIFO, ຈະຖືກຂ້າມໂດຍອັດຕະໂນມັດ.
ການເຊື່ອມໂຍງສັນຍາລັກແລະເປົ້າຫມາຍຂອງພວກເຂົາແມ່ນເກັບຮັກສາໄວ້ໃນຕອນຕົ້ນ untouched. ການເຊື່ອມໂຍງສັນຍາລັກສາມາດ
ທາງເລືອກຈະຖືກປ່ຽນແທນ, ຫຼືຜົນຜະລິດສາມາດຖືກຂຽນໃສ່ເປົ້າຫມາຍການເຊື່ອມຕໍ່ສັນຍາລັກ.
ບໍ່ຮອງຮັບການເຊື່ອມຕໍ່ສັນຍາລັກໃນ Windows. ການເຊື່ອມຕໍ່ສັນຍາລັກຂອງ Windows ໄດ້ຖືກແທນທີ່ສະເຫມີ,
ຮັກສາເປົ້າໝາຍທີ່ບໍ່ປ່ຽນແປງ.
Dos2unix ຖືກສ້າງແບບຈໍາລອງຈາກ dos2unix ພາຍໃຕ້ SunOS/Solaris ແລະມີຮູບແບບການແປງທີ່ຄ້າຍຄືກັນ.
OPTIONS
-- ປະຕິບັດທຸກທາງເລືອກຕໍ່ໄປນີ້ເປັນຊື່ໄຟລ໌. ໃຊ້ຕົວເລືອກນີ້ຖ້າທ່ານຕ້ອງການປ່ຽນ
ໄຟລ໌ທີ່ມີຊື່ເລີ່ມຕົ້ນດ້ວຍ dash. ສໍາລັບຕົວຢ່າງທີ່ຈະປ່ຽນໄຟລ໌ທີ່ມີຊື່ "-foo", ທ່ານ
ສາມາດໃຊ້ຄໍາສັ່ງນີ້:
dos2unix -- -foo
ຫຼືຢູ່ໃນຮູບແບບໄຟລ໌ໃຫມ່:
dos2unix -n --foo out.txt
-ascii
ແປງພຽງແຕ່ການແບ່ງເສັ້ນ. ນີ້ແມ່ນຮູບແບບການແປງເລີ່ມຕົ້ນ.
-iso
ການປ່ຽນລະຫວ່າງ DOS ແລະ ISO-8859-1 ຊຸດຕົວອັກສອນ. ເບິ່ງພາກສ່ວນ CONVERSION ນຳ
ຮູບແບບ.
-1252
ໃຊ້ລະຫັດ Windows ຫນ້າ 1252 (ເອີຣົບຕາເວັນຕົກ).
-437
ໃຊ້ລະຫັດ DOS ຫນ້າ 437 (ສະຫະລັດ). ນີ້ແມ່ນໜ້າລະຫັດເລີ່ມຕົ້ນທີ່ໃຊ້ສຳລັບການປ່ຽນ ISO.
-850
ໃຊ້ລະຫັດ DOS ຫນ້າ 850 (ເອີຣົບຕາເວັນຕົກ).
-860
ໃຊ້ລະຫັດ DOS ຫນ້າ 860 (ພາສາປອກຕຸຍການ).
-863
ໃຊ້ລະຫັດ DOS ຫນ້າ 863 (ພາສາຝຣັ່ງການາດາ).
-865
ໃຊ້ລະຫັດ DOS ຫນ້າ 865 (Nordic).
-7 ແປງຕົວອັກສອນ 8 ບິດເປັນຊ່ອງຫວ່າງ 7 ບິດ.
-c, --convmode CONVMODE
ຕັ້ງຮູບແບບການແປງ. ບ່ອນທີ່ CONVMODE ແມ່ນຫນຶ່ງໃນ: ASCII, 7bit, ຂະຫນາດໃຫຍ່, mac ກັບ ascii ເປັນ
ຄ່າເລີ່ມຕົ້ນ.
-f, --ກຳລັງ
ບັງຄັບໃຫ້ປ່ຽນໄຟລ໌ໄບນາຣີ.
-ຊ, - ຊ່ວຍ
ສະແດງການຊ່ວຍເຫຼືອ ແລະອອກ.
-k, -- ຮັກສາວັນທີ
ຮັກສາປະທັບຕາວັນທີຂອງໄຟລ໌ຜົນຜະລິດຄືກັນກັບໄຟລ໌ປ້ອນຂໍ້ມູນ.
-L, -- ໃບອະນຸຍາດ
ສະແດງໃບອະນຸຍາດຂອງໂຄງການ.
-l, -- ແຖວໃໝ່
ເພີ່ມແຖວໃໝ່ເພີ່ມເຕີມ.
dos2unix: ພຽງແຕ່ການແບ່ງເສັ້ນ DOS ເທົ່ານັ້ນທີ່ປ່ຽນເປັນສອງແຖວ Unix. ໃນໂໝດ Mac ເທົ່ານັ້ນ
ການແບ່ງແຖວ Mac ຖືກປ່ຽນເປັນສອງແຖວ Unix.
unix2dos: ພຽງແຕ່ການແບ່ງເສັ້ນ Unix ຖືກປ່ຽນເປັນສອງແຖວ DOS. ໃນ Mac mode Unix
ການແບ່ງແຖວຖືກປ່ຽນເປັນສອງແຖວຂອງ Mac.
-m, --add-bom
ຂຽນ UTF-8 Byte Order Mark ໃນໄຟລ໌ຜົນຜະລິດ. ບໍ່ເຄີຍໃຊ້ທາງເລືອກນີ້ໃນເວລາທີ່
ການເຂົ້າລະຫັດຜົນໄດ້ຮັບແມ່ນອັນອື່ນນອກເໜືອໄປຈາກ UTF-8. ເບິ່ງພາກ UNICODE ນຳ.
-n, --newfile INFILE OUTFILE ...
ໂໝດໄຟລ໌ໃໝ່. ແປງໄຟລ໌ INFILE ແລະຂຽນອອກເປັນໄຟລ໌ OUTFILE. ຊື່ໄຟລ໌ຕ້ອງ
ຈະຖືກມອບເປັນຄູ່ ແລະຊື່ແທນຄວນ ບໍ່ ຖືກນໍາໃຊ້ຫຼືທ່ານ ຈະ ສູນເສຍໄຟລ໌ຂອງທ່ານ.
ຜູ້ທີ່ເລີ່ມຕົ້ນການປ່ຽນແປງໃນຮູບແບບໄຟລ໌ໃຫມ່ (ຄູ່) ຈະເປັນເຈົ້າຂອງ
ໄຟລ໌ທີ່ປ່ຽນໃຈເຫລື້ອມໃສ. ການອະນຸຍາດອ່ານ / ຂຽນຂອງໄຟລ໌ໃຫມ່ຈະເປັນການອະນຸຍາດ
ຂອງໄຟລ໌ຕົ້ນສະບັບລົບ ໜ້າ ກາກ(1) ຂອງບຸກຄົນທີ່ດໍາເນີນການປ່ຽນໃຈເຫລື້ອມໃສ.
-o, --oldfile ເອກະສານ ...
ຮູບແບບໄຟລ໌ເກົ່າ. ປ່ຽນໄຟລ໌ FILE ແລະຂຽນທັບຜົນຜະລິດໃສ່ມັນ. ໂປຣແກມເລີ່ມຕົ້ນເປັນ
ແລ່ນຢູ່ໃນໂຫມດນີ້. ອາດໃຊ້ຊື່ແທນນາມສະກຸນ.
ໃນຮູບແບບໄຟລ໌ເກົ່າ (ໃນສະຖານທີ່) ໄຟລ໌ປ່ຽນໃຈເຫລື້ອມໃສໄດ້ຮັບເຈົ້າຂອງດຽວກັນ, ກຸ່ມ, ແລະ
ອ່ານ/ຂຽນສິດເປັນໄຟລ໌ຕົ້ນສະບັບ. ນອກຈາກນີ້ໃນເວລາທີ່ໄຟລ໌ໄດ້ຖືກແປງໂດຍ
ຜູ້ໃຊ້ອື່ນທີ່ມີການອະນຸຍາດຂຽນກ່ຽວກັບໄຟລ໌ (ເຊັ່ນ: ຮາກຜູ້ໃຊ້). ການປ່ຽນໃຈເຫລື້ອມໃສ
ຈະຖືກຍົກເລີກເມື່ອບໍ່ສາມາດຮັກສາຄຸນຄ່າເດີມໄດ້. ການປ່ຽນແປງຂອງ
ເຈົ້າຂອງອາດຫມາຍຄວາມວ່າເຈົ້າຂອງຕົ້ນສະບັບບໍ່ສາມາດອ່ານໄຟລ໌ໄດ້ອີກແລ້ວ. ປ່ຽນແປງ
ຂອງກຸ່ມອາດຈະເປັນຄວາມສ່ຽງດ້ານຄວາມປອດໄພ, ໄຟລ໌ສາມາດໄດ້ຮັບການອ່ານສໍາລັບບຸກຄົນ
ຜູ້ທີ່ມັນບໍ່ມີຈຸດປະສົງ. ການອະນຸຍາດຂອງເຈົ້າຂອງ, ກຸ່ມ, ແລະອ່ານ / ຂຽນແມ່ນ
ສະຫນັບສະຫນູນພຽງແຕ່ໃນ Unix.
-q, --ງຽບ
ໂໝດງຽບ. ສະກັດກັ້ນການເຕືອນໄພ ແລະຂໍ້ຄວາມທັງໝົດ. ຄ່າກັບຄືນແມ່ນສູນ. ຍົກເວັ້ນເວລາ
ຕົວເລືອກເສັ້ນຄໍາສັ່ງທີ່ບໍ່ຖືກຕ້ອງຖືກນໍາໃຊ້.
- ແມ່ນແລ້ວ, -- ປອດໄພ
ຂ້າມໄຟລ໌ໄບນາຣີ (ຄ່າເລີ່ມຕົ້ນ).
-ul, --assume-utf16le
ສົມມຸດວ່າຮູບແບບໄຟລ໌ປ້ອນຂໍ້ມູນແມ່ນ UTF-16LE.
ເມື່ອມີ Byte Order Mark ໃນໄຟລ໌ປ້ອນຂໍ້ມູນ BOM ມີບູລິມະສິດຫຼາຍກວ່ານີ້
ທາງເລືອກ.
ເມື່ອເຈົ້າສົມມຸດຖານຜິດ (ໄຟທີ່ປ້ອນເຂົ້າບໍ່ໄດ້ຢູ່ໃນຮູບແບບ UTF-16LE) ແລະ
ການປ່ຽນແປງສົບຜົນສໍາເລັດ, ທ່ານຈະໄດ້ຮັບໄຟລ໌ຜົນຜະລິດ UTF-8 ທີ່ມີຂໍ້ຄວາມຜິດພາດ. ທ່ານສາມາດຍົກເລີກໄດ້
ການປ່ຽນແປງທີ່ຜິດພາດກັບ iconv(1) ໂດຍການປ່ຽນໄຟລ໌ຜົນຜະລິດ UTF-8 ກັບຄືນໄປບ່ອນ
UTF-16LE. ອັນນີ້ຈະເຮັດໃຫ້ໄຟລ໌ຕົ້ນສະບັບກັບຄືນມາ.
ສົມມຸດຕິຖານຂອງ UTF-16LE ເຮັດວຽກເປັນ ການປ່ຽນແປງ ຮູບແບບການ. ໂດຍການປ່ຽນເປັນຄ່າເລີ່ມຕົ້ນ
ASCII ຮູບແບບການສົມມຸດຕິຖານ UTF-16LE ປິດ.
-ub, --assume-utf16be
ສົມມຸດວ່າຮູບແບບໄຟລ໌ປ້ອນຂໍ້ມູນແມ່ນ UTF-16BE.
ຕົວເລືອກນີ້ເຮັດວຽກຄືກັນກັບທາງເລືອກ "-ul".
-F, --follow-symlink
ປະຕິບັດຕາມການເຊື່ອມຕໍ່ສັນຍາລັກແລະປ່ຽນເປົ້າຫມາຍ.
-R, --replace-symlink
ແທນທີ່ການເຊື່ອມຕໍ່ສັນຍາລັກກັບໄຟລ໌ທີ່ປ່ຽນໃຈເຫລື້ອມໃສ (ໄຟລ໌ເປົ້າຫມາຍຕົ້ນສະບັບຍັງຄົງບໍ່ປ່ຽນແປງ).
-S, --skip-symlink
ຮັກສາການເຊື່ອມຕໍ່ສັນຍາລັກແລະເປົ້າຫມາຍທີ່ບໍ່ປ່ຽນແປງ (ຄ່າເລີ່ມຕົ້ນ).
-V, - ການປ່ຽນແປງ
ສະແດງຂໍ້ມູນສະບັບແລະອອກ.
MAC MODE
ໃນຮູບແບບປົກກະຕິການແບ່ງເສັ້ນແມ່ນປ່ຽນຈາກ DOS ໄປ Unix ແລະໃນທາງກັບກັນ. Mac ແຕກແຖວ
ບໍ່ໄດ້ປ່ຽນໃຈເຫລື້ອມໃສ.
ໃນຮູບແບບ Mac breaks ສາຍແມ່ນປ່ຽນຈາກ Mac ກັບ Unix ແລະກົງກັນຂ້າມ. ການແບ່ງສາຍ DOS ແມ່ນ
ບໍ່ມີການປ່ຽນແປງ.
ເພື່ອດໍາເນີນການໃນໂຫມດ Mac ໃຊ້ຕົວເລືອກເສັ້ນຄໍາສັ່ງ "-c mac" ຫຼືໃຊ້ຄໍາສັ່ງ "mac2unix" ຫຼື.
"unix2mac".
ການສົນທະນາ ຮູບແບບ
ຮູບແບບການແປງ ASCII, 7bit, ແລະ ຂະຫນາດໃຫຍ່ ແມ່ນຄ້າຍຄືກັນກັບ dos2unix/unix2dos ພາຍໃຕ້
SunOS/Solaris.
ASCII
ໃນໂຫມດ "ascii" ພຽງແຕ່ການແບ່ງເສັ້ນຖືກແປງ. ນີ້ແມ່ນຮູບແບບການແປງເລີ່ມຕົ້ນ.
ເຖິງແມ່ນວ່າຊື່ຂອງໂຫມດນີ້ແມ່ນ ASCII, ເຊິ່ງເປັນມາດຕະຖານ 7 ນ້ອຍ, ຮູບແບບທີ່ແທ້ຈິງແມ່ນ
8 ບິດ. ໃຊ້ໂໝດນີ້ສະເໝີເມື່ອປ່ຽນໄຟລ໌ Unicode UTF-8.
7bit
ໃນຮູບແບບນີ້ທັງຫມົດ 8 bit ຕົວອັກສອນທີ່ບໍ່ແມ່ນ ASCII (ມີຄ່າຈາກ 128 ຫາ 255) ແມ່ນ.
ປ່ຽນເປັນພື້ນທີ່ 7 ບິດ.
ຂະຫນາດໃຫຍ່ ຕົວອັກສອນຖືກປ່ຽນລະຫວ່າງຊຸດຕົວອັກສອນ DOS (ໜ້າລະຫັດ) ແລະຊຸດຕົວອັກສອນ ISO
ISO-8859-1 (ລາຕິນ-1) ໃນ Unix. ຕົວອັກສອນ DOS ທີ່ບໍ່ມີການທຽບເທົ່າ ISO-8859-1, ເຊິ່ງ
ການປ່ຽນໃຈເຫລື້ອມໃສເປັນໄປບໍ່ໄດ້, ຖືກປ່ຽນເປັນຈຸດ. ການນັບດຽວກັນສໍາລັບ ISO-8859-1
ຕົວອັກສອນທີ່ບໍ່ມີຄູ່ DOS.
ເມື່ອທາງເລືອກພຽງແຕ່ "-iso" ຖືກນໍາໃຊ້ dos2unix ຈະພະຍາຍາມກໍານົດຫນ້າລະຫັດທີ່ໃຊ້ວຽກ.
ເມື່ອນີ້ເປັນໄປບໍ່ໄດ້ dos2unix ຈະໃຊ້ຫນ້າລະຫັດເລີ່ມຕົ້ນ CP437, ເຊິ່ງສ່ວນໃຫຍ່ແມ່ນ
ໃຊ້ໃນສະຫະລັດ. ເພື່ອບັງຄັບໃຊ້ໜ້າລະຫັດສະເພາະ "-437" (US), "-850"
(ເອີຣົບຕາເວັນຕົກ), "-860" (ພາສາປອກຕຸຍການ), "-863" (ຝຣັ່ງການາດາ), ຫຼື "-865" (ນໍດິກ).
ຫນ້າລະຫັດ Windows CP1252 (ເອີຣົບຕາເວັນຕົກ) ຍັງສະຫນັບສະຫນູນທາງເລືອກ "-1252". ສໍາລັບ
ຫນ້າລະຫັດອື່ນໆໃຊ້ dos2unix ປະສົມປະສານກັບ iconv(1). Iconv ສາມາດປ່ຽນລະຫວ່າງ
ບັນຊີລາຍຊື່ຍາວຂອງການເຂົ້າລະຫັດຕົວອັກສອນ.
ຢ່າໃຊ້ການແປງ ISO ໃນໄຟລ໌ຂໍ້ຄວາມ Unicode. ມັນຈະເສຍຫາຍໄຟລ໌ທີ່ເຂົ້າລະຫັດ UTF-8.
ບາງຕົວຢ່າງ:
ປ່ຽນຈາກໜ້າລະຫັດເລີ່ມຕົ້ນຂອງ DOS ເປັນ Unix Latin-1
dos2unix -iso -n in.txt out.txt
ປ່ຽນຈາກ DOS CP850 ເປັນ Unix Latin-1
dos2unix -850 -n in.txt out.txt
ປ່ຽນຈາກ Windows CP1252 ເປັນ Unix Latin-1
dos2unix -1252 -n in.txt out.txt
ປ່ຽນຈາກ Windows CP1252 ເປັນ Unix UTF-8 (Unicode)
iconv -f CP1252 -t UTF-8 in.txt | dos2unix > out.txt
ປ່ຽນຈາກ Unix Latin-1 ເປັນໜ້າລະຫັດເລີ່ມຕົ້ນ DOS.
unix2dos -iso -n in.txt out.txt
ປ່ຽນຈາກ Unix Latin-1 ເປັນ DOS CP850
unix2dos -850 -n in.txt out.txt
ປ່ຽນຈາກ Unix Latin-1 ເປັນ Windows CP1252
unix2dos -1252 -n in.txt out.txt
ປ່ຽນຈາກ Unix UTF-8 (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 ໃຫຍ່ endian, ແຕ່ສ່ວນໃຫຍ່ແມ່ນຖືກເຂົ້າລະຫັດໃນຮູບແບບ UTF-16.
ການປ່ຽນແປງ
ໄຟລ໌ຂໍ້ຄວາມ Unicode ສາມາດມີການແບ່ງແຖວ DOS, Unix ຫຼື Mac ເຊັ່ນ: ໄຟລ໌ຂໍ້ຄວາມປົກກະຕິ.
ທຸກລຸ້ນຂອງ dos2unix ແລະ unix2dos ສາມາດປ່ຽນໄຟລ໌ທີ່ເຂົ້າລະຫັດ UTF-8, ເພາະວ່າ UTF-8 ແມ່ນ
ອອກແບບມາເພື່ອຄວາມເຂົ້າກັນໄດ້ກັບ ASCII.
Dos2unix ແລະ unix2dos ທີ່ມີການສະຫນັບສະຫນູນ Unicode UTF-16, ສາມາດອ່ານ UTF-16 endian ນ້ອຍແລະໃຫຍ່.
ໄຟລ໌ຂໍ້ຄວາມທີ່ເຂົ້າລະຫັດ. ເພື່ອເບິ່ງວ່າ dos2unix ຖືກສ້າງຂຶ້ນດ້ວຍການສະຫນັບສະຫນູນ UTF-16 ປະເພດ "dos2unix -V".
ເວີຊັນ Windows ຂອງ dos2unix ແລະ unix2dos ປ່ຽນໄຟລ໌ທີ່ເຂົ້າລະຫັດ UTF-16 ເປັນ UTF-8 ສະເໝີ.
ໄຟລ໌ທີ່ເຂົ້າລະຫັດ. ເວີຊັນ Unix ຂອງ dos2unix/unix2dos ປ່ຽນໄຟລ໌ UTF-16 ເຂົ້າລະຫັດເປັນ.
ການເຂົ້າລະຫັດຕົວອັກສອນທ້ອງຖິ່ນເມື່ອມັນຖືກຕັ້ງເປັນ UTF-8. ໃຊ້ ທ້ອງຖິ່ນ(1) ຄໍາສັ່ງເພື່ອຊອກຫາ
ການເຂົ້າລະຫັດຕົວອັກສອນທ້ອງຖິ່ນແມ່ນຫຍັງ.
ເນື່ອງຈາກວ່າໄຟລ໌ຂໍ້ຄວາມທີ່ມີຮູບແບບ UTF-8 ໄດ້ຮັບການສະຫນັບສະຫນູນທີ່ດີໃນທັງ Windows ແລະ Unix, dos2unix
ແລະ unix2dos ບໍ່ມີທາງເລືອກທີ່ຈະຂຽນໄຟລ໌ UTF-16. ຕົວອັກສອນ UTF-16 ທັງໝົດສາມາດເຂົ້າລະຫັດໄດ້
UTF-8. ການປ່ຽນຈາກ UTF-16 ເປັນ UTF-8 ແມ່ນບໍ່ມີການສູນເສຍ. ໄຟລ໌ UTF-16 ຈະຖືກຂ້າມໄປ
Unix ເມື່ອການເຂົ້າລະຫັດຕົວອັກສອນທ້ອງຖິ່ນບໍ່ແມ່ນ UTF-8, ເພື່ອປ້ອງກັນການສູນເສຍຂໍ້ຄວາມໂດຍບັງເອີນ.
ເມື່ອເກີດຄວາມຜິດພາດການແປງ UTF-16 ເປັນ UTF-8, ຕົວຢ່າງເມື່ອໄຟລ໌ປ້ອນຂໍ້ມູນ UTF-16
ມີຂໍ້ຜິດພາດ, ໄຟລ໌ຈະຖືກຂ້າມໄປ.
ການປ່ຽນຮູບແບບ ISO ແລະ 7-bit ບໍ່ເຮັດວຽກຢູ່ໃນໄຟລ໌ UTF-16.
ໄບຕ໌ ຄໍາສັ່ງ ເຄື່ອງຫມາຍ
ໃນ Windows Unicode ໄຟລ໌ຂໍ້ຄວາມໂດຍປົກກະຕິມີ Byte Order Mark (BOM), ເພາະວ່າ Windows ມີຫຼາຍ
ບັນດາໂຄງການ (ລວມທັງ Notepad) ເພີ່ມ BOMs ຕາມຄ່າເລີ່ມຕົ້ນ. ເບິ່ງນຳ
<http://en.wikipedia.org/wiki/Byte_order_mark>.
ໃນໄຟລ໌ Unix Unicode ປົກກະຕິແລ້ວບໍ່ມີ BOM. ມັນແມ່ນສົມມຸດວ່າໄຟລ໌ຂໍ້ຄວາມແມ່ນ
ເຂົ້າລະຫັດຢູ່ໃນການເຂົ້າລະຫັດຕົວອັກສອນທ້ອງຖິ່ນ.
Dos2unix ສາມາດກວດພົບໄດ້ພຽງແຕ່ວ່າໄຟລ໌ຢູ່ໃນຮູບແບບ UTF-16 ຖ້າໄຟລ໌ມີ BOM. ເມື່ອເປັນ
ໄຟລ໌ UTF-16 ບໍ່ມີ BOM, dos2unix ຈະເຫັນໄຟລ໌ເປັນໄຟລ໌ສອງ.
ໃຊ້ຕົວເລືອກ "-ul" ຫຼື "-ub" ເພື່ອປ່ຽນໄຟລ໌ UTF-16 ໂດຍບໍ່ມີ BOM.
Dos2unix ບໍ່ເຄີຍຂຽນ BOM ໃນໄຟລ໌ຜົນຜະລິດ, ເວັ້ນເສຍແຕ່ວ່າທ່ານໃຊ້ທາງເລືອກ "-m".
Unix2dos ຂຽນ BOM ໃນໄຟລ໌ຜົນຜະລິດເມື່ອໄຟລ໌ປ້ອນຂໍ້ມູນມີ BOM, ຫຼືເມື່ອທາງເລືອກ
"-m" ຖືກໃຊ້.
Unicode ຕົວຢ່າງ
ປ່ຽນຈາກ Windows UTF-16 (ກັບ BOM) ເປັນ Unix UTF-8
dos2unix -n in.txt out.txt
ປ່ຽນຈາກ Windows UTF-16LE (ໂດຍບໍ່ມີ BOM) ເປັນ Unix UTF-8
dos2unix -ul -n in.txt out.txt
ປ່ຽນຈາກ Unix UTF-8 ເປັນ Windows UTF-8 ດ້ວຍ BOM
unix2dos -m -n in.txt out.txt
ປ່ຽນຈາກ Unix UTF-8 ເປັນ Windows UTF-16
unix2dos < in.txt | iconv -f UTF-8 -t UTF-16 > out.txt
ຕົວຢ່າງ
ອ່ານການປ້ອນຂໍ້ມູນຈາກ 'stdin' ແລະຂຽນອອກເປັນ 'stdout'.
dos2unix
dos2unix -l -c mac
ແປງແລະແທນທີ່ 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 ໃນ 7bit
ຮູບແບບການແປງ.
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, ຮັກສາສະແຕມວັນທີຂອງ e.txt ຄືກັນກັບ a.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
ກັບຄືນມາ ການສົນທະນາ
ໃຊ້ dos2unix ປະສົມປະສານກັບ ຊອກຫາ(1) ແລະ xargs(1) ຄໍາສັ່ງທີ່ຈະປ່ຽນ recursively
ໄຟລ໌ຂໍ້ຄວາມໃນໂຄງສ້າງຕົ້ນໄມ້ໄດເລກະທໍລີ. ສໍາລັບຕົວຢ່າງທີ່ຈະປ່ຽນໄຟລ໌ .txt ທັງຫມົດໃນ
ຕົ້ນໄມ້ໄດເລກະທໍລີພາຍໃຕ້ປະເພດໄດເລກະທໍລີປະຈຸບັນ:
ຊອກຫາ. -name *.txt |xargs dos2unix
ສະຖານທີ່
ພາສາ
ພາສາຫຼັກຖືກເລືອກດ້ວຍຕົວແປສະພາບແວດລ້ອມ LANG. ຕົວແປ LANG
ປະກອບດ້ວຍຫຼາຍພາກສ່ວນ. ສ່ວນທໍາອິດແມ່ນຢູ່ໃນຕົວອັກສອນຂະຫນາດນ້ອຍລະຫັດພາສາ.
ອັນທີສອງແມ່ນທາງເລືອກແລະເປັນລະຫັດປະເທດໃນຕົວພິມໃຫຍ່, ກ່ອນຫນ້າດ້ວຍ
ຂີດກ້ອງ. ນອກຈາກນີ້ຍັງມີສ່ວນທີສາມທີ່ເປັນທາງເລືອກ: ການເຂົ້າລະຫັດຕົວອັກສອນ, ກ່ອນຫນ້າດ້ວຍ a
ຈຸດ. ບາງຕົວຢ່າງສໍາລັບແກະປະເພດມາດຕະຖານ POSIX:
ສົ່ງອອກ LANG=nl ໂຮນລັງ
ສົ່ງອອກ LANG=nl_NL ໂຮນລັງ, ເນເທີແລນ
ສົ່ງອອກ LANG=nl_BE ໂຮນລັງ, ປະເທດແບນຊິກ
ສົ່ງອອກ LANG=es_ES ສະເປນ, ສະເປນ
ສົ່ງອອກ LANG=es_MX ແອສປາໂຍນ, ເມັກຊິໂກ
ສົ່ງອອກ LANG=en_US.iso88591 ການເຂົ້າລະຫັດພາສາອັງກິດ, ສະຫະລັດ, ລາຕິນ-1
ສົ່ງອອກ LANG=en_GB.UTF-8 ການເຂົ້າລະຫັດພາສາອັງກິດ, ອັງກິດ, UTF-8
ສໍາລັບບັນຊີລາຍຊື່ເຕັມຂອງພາສາແລະລະຫັດປະເທດເບິ່ງຄູ່ມື gettext:
<http://www.gnu.org/software/gettext/manual/gettext.html#ພາສາ-ລະຫັດ>
ໃນລະບົບ Unix ທ່ານສາມາດນໍາໃຊ້ຄໍາສັ່ງ ທ້ອງຖິ່ນ(1) ເພື່ອໃຫ້ໄດ້ຮັບຂໍ້ມູນສະເພາະຂອງທ້ອງຖິ່ນ.
LANGUAGE
ດ້ວຍຕົວແປສະພາບແວດລ້ອມ LANGUAGE ທ່ານສາມາດລະບຸລາຍຊື່ບູລິມະສິດຂອງພາສາ,
ແຍກໂດຍຈໍ້າສອງເມັດ. Dos2unix ໃຫ້ຄວາມມັກກັບ LANGUAGE ຫຼາຍກວ່າ LANG. ຕົວຢ່າງ,
ພາສາໂຮນລັງທໍາອິດແລະຫຼັງຈາກນັ້ນເຢຍລະມັນ: "LANGUAGE=nl:de". ກ່ອນອື່ນ ໝົດ ທ່ານຕ້ອງເປີດໃຊ້ການແປພາສາ
ໂດຍການຕັ້ງຄ່າ LANG (ຫຼື LC_ALL) ເປັນຄ່າອື່ນທີ່ບໍ່ແມ່ນ "C", ກ່ອນທີ່ທ່ານຈະສາມາດໃຊ້ພາສາໃດໜຶ່ງໄດ້
ລາຍຊື່ບູລິມະສິດຜ່ານຕົວແປ LANGUAGE. ເບິ່ງຄູ່ມື gettext:
<http://www.gnu.org/software/gettext/manual/gettext.html#The-LANGUAGE-variable>
ຖ້າຫາກທ່ານເລືອກພາສາທີ່ບໍ່ມີທີ່ທ່ານຈະໄດ້ຮັບພາສາອັງກິດມາດຕະຖານ
ຂໍ້ຄວາມ.
DOS2UNIX_LOCALEDIR
ດ້ວຍຕົວແປສະພາບແວດລ້ອມ DOS2UNIX_LOCALEDIR LOCALEDIR ຕັ້ງຄ່າໃນລະຫວ່າງການລວບລວມ.
ສາມາດ overruled. LOCALEDIR ຖືກໃຊ້ເພື່ອຊອກຫາໄຟລ໌ພາສາ. ຄ່າເລີ່ມຕົ້ນຂອງ GNU
ແມ່ນ "/usr/local/share/locale". ທາງເລືອກ - ການປ່ຽນແປງ ຈະສະແດງ LOCALEDIR ທີ່ເປັນ
ໃຊ້ແລ້ວ.
ຕົວຢ່າງ (POSIX shell):
ສົ່ງອອກ DOS2UNIX_LOCALEDIR=$HOME/share/locale
ກັບຄືນ ມູນຄ່າ
ເມື່ອປະສົບຜົນສໍາເລັດ, ສູນຖືກສົ່ງຄືນ. ເມື່ອເກີດຄວາມຜິດພາດຂອງລະບົບ, ຄວາມຜິດພາດຂອງລະບົບສຸດທ້າຍຈະເປັນ
ກັບຄືນ. ສໍາລັບຄວາມຜິດພາດອື່ນໆ 1 ຖືກສົ່ງຄືນ.
ຄ່າກັບຄືນແມ່ນສູນສະເໝີໃນໂໝດງຽບ, ຍົກເວັ້ນເມື່ອຕົວເລືອກແຖວຄຳສັ່ງຜິດ
ໃຊ້ແລ້ວ.
ມາດຕະຖານ
<http://en.wikipedia.org/wiki/Text_file>
<http://en.wikipedia.org/wiki/Carriage_return>
<http://en.wikipedia.org/wiki/Newline>
<http://en.wikipedia.org/wiki/Unicode>
AUTHORS
Benjamin Lin -[email protected]> Bernd Johannes Wuebben (ໂໝດ mac2unix) -
<[email protected]>, Christian Wurll (ເພີ່ມເສັ້ນໃຫມ່ພິເສດ) -[email protected]>, Erwin
Waterlander -[email protected]> (ຜູ້ຮັກສາ)
ໜ້າໂຄງການ:http://waterlan.home.xs4all.nl/dos2unix.html>
ຫນ້າ SourceForge:http://sourceforge.net/projects/dos2unix/>
ລະຫັດຟຣີ:http://freecode.com/projects/dos2unix>
ໃຊ້ unix2dos ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net