ນີ້ແມ່ນຄໍາສັ່ງ mddiff ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
mddiff - ການຄິດໄລ່ຄວາມແຕກຕ່າງສໍາລັບ maildirs
ສະຫຼຸບສັງລວມ
mddiff [--max-mailno ໂນ] [--db-file dbf] [-l|--ລາຍການ] [-s|--symlink]
[--ຍົກເວັ້ນ globexpr] [-v|-- verbose] [-d|-- ແລ່ນແຫ້ງ]
[-n|-- ບໍ່ມີການລຶບ] [-- ບໍ່ມີການເຄື່ອນໄຫວ] [- ຊ່ວຍ] [--sha1sum] ເສັ້ນທາງ
ລາຍລະອຽດ
mddiff ຄິດໄລ່ delta ຈາກສະຖານະພາບເກົ່າຂອງ maildir (ບັນທຶກໄວ້ໃນເມື່ອກ່ອນໃນ a
ໄຟລ໌ສະຫນັບສະຫນູນ, ເອີ້ນວ່າໄຟລ໌ db) ແລະສະຖານະປະຈຸບັນ, ການສ້າງຊຸດຂອງຄໍາສັ່ງ (a
diff) ທີ່ຊອບແວພາກສ່ວນທີສາມສາມາດນໍາໃຊ້ເພື່ອ synchronize ສໍາເນົາ (ໃນທີ່ສຸດທາງໄກ) ຂອງ
maildir ໄດ້.
If ເສັ້ນທາງ ແມ່ນຊື່ໄຟລ໌ດຽວ, ແລະໄຟລ໌ນັ້ນແມ່ນ fifo, mddiff ອ່ານຈາກຊື່ໄຟລ໌ຂອງມັນ
ແຍກອອກດ້ວຍເສັ້ນໃໝ່ ແລະສົ່ງຜົນໃຫ້ sha1 ຂອງສ່ວນຫົວ ແລະຮ່າງກາຍຂອງມັນແຍກອອກດ້ວຍຊ່ອງຫວ່າງ.
$ mddiff /tmp/fifo_for_mddiff
806a0ffe4f29766effd764... 463e543da9dac8e298...
582cbb6a5cd3ce13965c8c... 8fa60a7458b1157193...
...
If ເສັ້ນທາງ ແມ່ນຊື່ໄຟລ໌ດຽວ, ແລະໄຟລ໌ນັ້ນແມ່ນ fifo, ແລະ -s ທາງເລືອກແມ່ນຜ່ານ,
mddiff ອ່ານຈາກ fifo ສອງແຖວໃນເວລານັ້ນ, ຕາມລໍາດັບຊື່ແຫຼ່ງແລະເປົ້າຫມາຍ
ຊື່. ຫຼັງຈາກນັ້ນ, ມັນຈະສ້າງ symlink ທີ່ມີຊື່ເປັນຊື່ເປົ້າຫມາຍທີ່ຊີ້ໄປຫາຊື່ແຫຼ່ງ.
ຖ້າຫາກວ່າບາງ dictories ຕ້ອງໄດ້ຮັບການສ້າງຕັ້ງຂື້ນເພື່ອສ້າງ symlink, ນີ້ແມ່ນເຮັດເຊັ່ນດຽວກັນ.
mddiff ຈະພິມ 'OK' ໃນ stdout ເພື່ອສົ່ງສັນຍານຄວາມສຳເລັດ, 'ERROR' ເພື່ອສະແດງຂໍ້ຜິດພາດ.
If ເສັ້ນທາງ ແມ່ນບັນຊີລາຍຊື່ຂອງການ, mddiff ຜົນໄດ້ຮັບບັນຊີລາຍຊື່ຂອງການກະທໍາທີ່ລູກຄ້າຕ້ອງເຮັດ
ປະຕິບັດເພື່ອ synchronize ສໍາເນົາຂອງ maildirs ດຽວກັນ. ຊຸດຂອງການປະຕິບັດນີ້ແມ່ນກ່ຽວຂ້ອງກັບ a
ສະຖານະທີ່ຜ່ານມາຂອງ maildir ເກັບໄວ້ໃນໄຟລ໌ db. ໄດເລກະທໍລີການປ້ອນຂໍ້ມູນຖືກຂ້າມຜ່ານ
recursively, ແລະທຸກໄຟລ໌ທີ່ພົບພາຍໃນໄດເລກະທໍລີທີ່ມີຊື່ cur/ ແລະ new/ ແມ່ນ a
ຂໍ້ຄວາມທາງໄປສະນີທີ່ເປັນໄປໄດ້ (ຖ້າມັນບໍ່ມີ \n\n ມັນຖືກຂ້າມ).
$ mddiff ~/Mail/
ADD ~/Mail/cur/1239038050.14937_1.garfield:2,S 66532ebb05b252e...
...
ລູກຄ້າທຸກຄົນ (ຈຸດສິ້ນສຸດໂດຍໃຊ້ mddiff ສໍາລັບການ synchronization) ຈະຕ້ອງໃຊ້ db-file ທີ່ແຕກຕ່າງກັນ, ແລະ
db-file ແມ່ນກ່ຽວຂ້ອງຢ່າງເຂັ້ມງວດກັບຊຸດຂອງໄດເລກະທໍລີທີ່ໃຫ້ເປັນການໂຕ້ຖຽງ, ແລະຄວນ
ບໍ່ໄດ້ຖືກນໍາໃຊ້ກັບຊຸດໄດເລກະທໍລີທີ່ແຕກຕ່າງກັນ. ການເພີ່ມລາຍການໃສ່ຊຸດໄດເລກະທໍລີແມ່ນປອດໄພ,
ໃນຂະນະທີ່ການລົບໃຫ້ເຂົາເຈົ້າອາດຈະບໍ່ເຮັດສິ່ງທີ່ທ່ານຕ້ອງການ (ການປະຕິບັດການລົບແມ່ນສ້າງຂຶ້ນ).
mddiff ບໍ່ໄດ້ປ່ຽນແປງ dbf ໄຟລ໌, ມັນສ້າງອັນໃຫມ່ທີ່ເອີ້ນວ່າ dbf.new. ມັນຂຶ້ນກັບ
ເຄື່ອງມືລະດັບສູງກວ່າ smd-ເຊີບເວີ(1) ການປ່ຽນຊື່ dbf.new ເປັນ dbf ໃນກໍລະນີຂອງຈຸດສຸດທ້າຍອື່ນໆ
ນຳໃຊ້ຄວາມແຕກຕ່າງຢ່າງສຳເລັດຜົນ.
ໄດ້ --ຍົກເວັ້ນ ທາງເລືອກບອກ mddiff ບໍ່ສົນໃຈທັງໝົດ ເສັ້ນທາງ ກົງກັບທີ່ໃຫ້ ໂລກ(7)
ການສະແດງອອກ. ທາງເລືອກນີ້ສາມາດຜ່ານຫຼາຍຄັ້ງ. ການຈັບຄູ່ແມ່ນດໍາເນີນການໂດຍໃຊ້
fnmatch(3) ບໍ່ມີທຸງພິເສດ, ດັ່ງນັ້ນ '*' ແລະ '?' ກົງກັບຕົວອັກສອນໃດນຶ່ງລວມທັງ '/'.
ການຈັບຄູ່ແມ່ນປະຕິບັດເມື່ອມີລາຍຊື່ເຂົ້າ. ຖ້າຫາກວ່າການແຂ່ງຂັນແມ່ນສໍາເລັດ, ໄດ້
ໄດເລກະທໍລີແລະທຸກ subedirectories ຂອງມັນຖືກຂ້າມ.
ໄດ້ -- ບໍ່ມີການລຶບ ທາງເລືອກບອກ mddiff ເພື່ອບໍ່ໃຫ້ອອກຄຳສັ່ງ DELETE ສຳລັບໄຟລ໌ທີ່
ຫາຍໄປ. ຈື່ໄວ້ວ່າຄຳສັ່ງ DELETE ແມ່ນສ້າງຂຶ້ນສຳລັບໄຟລ໌ທີ່ຖືກຍ້າຍ (ເຊັ່ນ:
ຍ້າຍແມ່ນ COPY ບວກ DELETE). ຜົນໄດ້ຮັບແມ່ນວ່າການລຶບບໍ່ໄດ້ແຜ່ຂະຫຍາຍໄປສູ່ຄົນອື່ນ
ຈຸດຈົບ.
OPTIONS
--max-mailno ໂນ
ການຄາດຄະເນຂອງຕົວເລກຂໍ້ຄວາມສູງສຸດ (ຄ່າເລີ່ມຕົ້ນກັບຈໍານວນຂອງຂໍ້ຄວາມໃນ
db-file + 1000 ຫຼື 500000 ຖ້າບໍ່ມີ db-file). ທ່ານອາດຈະຕ້ອງການທີ່ຈະຫຼຸດລົງມັນສໍາລັບ
ແລ່ນຄັ້ງທໍາອິດໃນລະບົບຂະຫນາດນ້ອຍ. ຢ່າງໃດກໍຕາມ, ມັນແມ່ນເພີ່ມຂຶ້ນອັດຕະໂນມັດໃນເວລາທີ່ຈໍາເປັນ
--db-file dbf
ຊື່ຂອງ cache ສໍາລັບຈຸດສິ້ນສຸດ (db.txt ເລີ່ມຕົ້ນ)
--ຍົກເວັ້ນ globexpr
ຍົກເວັ້ນ ເສັ້ນທາງ maching ການສະແດງອອກທີ່ໃຫ້
--sha1sum
ປະຕິບັດຕົວຄືກັບຜົນປະໂຫຍດຂອງ sha1sum
--mkdir-p
ປະຕິບັດຕົວຄືກັບ mkdir -p
--mkfifo
ປະຕິບັດຕົວຄືກັບ mkfifo
-l --ລາຍການ
ສະເພາະກ່ອງຈົດໝາຍທີ່ບັນຈຸຢູ່ໃນລາຍການຊ້ຳໆ ເສັ້ນທາງ
-s --symlink
ສ້າງ symlinks ສໍາລັບ ເສັ້ນທາງ ອ່ານຢູ່ໃນເອກະສານປ້ອນຂໍ້ມູນ
-v -- verbose
ເພີ່ມທະວີການ verbosity ຂອງໂຄງການ (ພິມໃນ stderr)
-d -- ແລ່ນແຫ້ງ
ຢ່າສ້າງໄຟລ໌ db ໃໝ່
-n -- ບໍ່ມີການລຶບ
ຢ່າຕິດຕາມໄຟລ໌ທີ່ຖືກລົບ
-- ບໍ່ມີການເຄື່ອນໄຫວ
ຢ່າສ້າງ MOVE (ພຽງແຕ່ສຳເນົາ + DELETE)
- ຊ່ວຍ ຫນ້າຈໍຊ່ວຍເຫຼືອນີ້
ຫມາຍເຫດ
mddiff ເປັນປະໂຫຍດໃນລະດັບຕ່ໍາ, ນໍາໃຊ້ໂດຍ smd-server ແລະ smd-client. ທ່ານຄວນໃຊ້ສູງກວ່າ
ເຄື່ອງມືລະດັບເຊັ່ນ smd-ດຶງ(1) smd-push(1) ແລະ smd-loop(1)
ໃຊ້ mddiff ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net