ຕົວຢ່າງ ຄຳ ສັ່ງ Linux sdiff ສຳ ລັບ Linux Newbies


ໃນ ໜຶ່ງ ໃນບົດຂຽນກ່ອນ ໜ້າ ນີ້, ພວກເຮົາໄດ້ອະທິບາຍກ່ຽວກັບ 9 ເຄື່ອງມືປຽບທຽບເອກະສານແລະຄວາມແຕກຕ່າງ (Diff) ທີ່ດີທີ່ສຸດ ສຳ ລັບລະບົບ Linux. ພວກເຮົາໄດ້ລະບຸລາຍການປະສົມຂອງເຄື່ອງສາຍແລະເຄື່ອງມື GUI ສຳ ລັບການປຽບທຽບແລະຊອກຫາຄວາມແຕກຕ່າງລະຫວ່າງເອກະສານ, ແຕ່ລະອັນມີລັກສະນະເດັ່ນທີ່ແນ່ນອນ ອີກປະໂຫຍດ ໜຶ່ງ ທີ່ມີປະໂຫຍດ ສຳ ລັບ Linux ທີ່ມີຊື່ວ່າ sdiff.

sdiff ແມ່ນຜົນປະໂຫຍດເສັ້ນຄໍາສັ່ງທີ່ງ່າຍດາຍສໍາລັບການສະແດງໃຫ້ເຫັນຄວາມແຕກຕ່າງລະຫວ່າງສອງເອກະສານແລະປະສານກັນ. ມັນງ່າຍທີ່ຈະໃຊ້ແລະມາພ້ອມກັບຕົວເລືອກການ ນຳ ໃຊ້ທີ່ກົງໄປກົງມາດັ່ງທີ່ໄດ້ອະທິບາຍຂ້າງລຸ່ມນີ້.

syntax ສຳ ລັບໃຊ້ sdiff ແມ່ນດັ່ງຕໍ່ໄປນີ້.

$ sdiff option... file1 file2

ສະແດງໃຫ້ເຫັນຄວາມແຕກຕ່າງລະຫວ່າງສອງເອກະສານໃນ Linux

1. ວິທີທີ່ງ່າຍທີ່ສຸດໃນການແລ່ນ sdiff ແມ່ນການໃຫ້ເອກະສານສອງຊື່ທີ່ທ່ານ ກຳ ລັງພະຍາຍາມປຽບທຽບ. ມັນຈະສະແດງໃຫ້ເຫັນຄວາມແຕກຕ່າງທີ່ຖືກລວມເຂົ້າກັນຕາມແຕ່ລະດ້ານດັ່ງທີ່ສະແດງຢູ່ໃນພາບ ໜ້າ ຈໍຕໍ່ໄປນີ້.

$ cal >cal.txt
$ df -h >du.txt
$ sdiff du.txt cal.txt

ປະຕິບັດຕໍ່ Files ທັງ ໝົດ ເປັນ File Text

2. ເພື່ອປະຕິບັດເອກະສານທັງ ໝົດ ເປັນຂໍ້ຄວາມແລະປຽບທຽບພວກມັນເປັນເສັ້ນ, ບໍ່ວ່າຈະເປັນເອກະສານຂໍ້ຄວາມຫລືບໍ່ກໍ່ຕາມ, ໃຫ້ ນຳ ໃຊ້ທຸງ -a .

$ sdiff -a du.txt cal.txt

Filesystem      Size  Used Avail Use% Mounted on	      |	     April 2018       
udev            3.9G     0  3.9G   0% /dev		      |	Su Mo Tu We Th Fr Sa  
tmpfs           788M  9.7M  779M   2% /run		      |	 1  2  3  4  5  6  7  
/dev/sda10      324G  265G   43G  87% /			      |	 8  9 10 11 12 13 14  
tmpfs           3.9G  274M  3.6G   7% /dev/shm		      |	15 16 17 18 19 20 21  
tmpfs           5.0M  4.0K  5.0M   1% /run/lock		      |	22 23 24 25 26 27 28  
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup	      |	29 30                 
/dev/loop2       82M   82M     0 100% /snap/core/4206	      |	                      
/dev/loop4      181M  181M     0 100% /snap/vlc/190	      <
/dev/loop1       87M   87M     0 100% /snap/core/4407	      <
/dev/loop0      189M  189M     0 100% /snap/vlc/158	      <
/dev/loop3       83M   83M     0 100% /snap/core/4327	      <
cgmfs           100K     0  100K   0% /run/cgmanager/fs	      <
tmpfs           788M   40K  788M   1% /run/user/1000	      <

ບໍ່ສົນໃຈ Tabs ແລະ White Space

3. ຖ້າທ່ານມີໄຟລ໌ທີ່ມີຊ່ອງຫວ່າງຫຼາຍເກີນໄປ, ທ່ານສາມາດບອກ sdiff ບໍ່ສົນໃຈພື້ນທີ່ສີຂາວທັງ ໝົດ ໃນຂະນະທີ່ປຽບທຽບໂດຍໃຊ້ປຸ່ມປ່ຽນລະຫັດ.

$ sdiff -W du.txt cal.txt

4. ທ່ານຍັງສາມາດບອກໃຫ້ sdiff ບໍ່ສົນໃຈພື້ນທີ່ສີຂາວໃດໆຢູ່ໃນແຖວໂດຍໃຊ້ຕົວເລືອກ -z .

$ sdiff -z du.txt cal.txt

5. ນອກຈາກນັ້ນ, ທ່ານສາມາດແນະ ນຳ ໃຫ້ sdiff ບໍ່ສົນໃຈການປ່ຽນແປງເນື່ອງຈາກການຂະຫຍາຍແທັບພ້ອມກັບທຸງ -E .

$ sdiff -E du.txt cal.txt

ບໍ່ສົນໃຈກໍລະນີໃນຂະນະທີ່ປຽບທຽບຄວາມແຕກຕ່າງ

6. ເພື່ອບໍ່ສົນໃຈຄະດີ (ບ່ອນທີ່ sdiff ປະຕິບັດຕໍ່ກໍລະນີທີ່ໃຫຍ່ແລະຕ່ ຳ ຄືກັນ), ໃຫ້ໃຊ້ຕົວເລືອກ -i ດັ່ງທີ່ສະແດງ.

$ sdiff -i du.txt cal.txt

ບໍ່ສົນໃຈເສັ້ນຫວ່າງເປົ່າໃນຂະນະທີ່ປຽບທຽບຄວາມແຕກຕ່າງ

7. ຕົວເລືອກ -B ຊ່ວຍໃຫ້ບໍ່ສົນໃຈເສັ້ນເປົ່າໃນເອກະສານ.

$ sdiff -B du.txt cal.txt

ກຳ ນົດ ຈຳ ນວນຖັນຕໍ່ຜົນໄດ້ຮັບ

8. sdiff ຊ່ວຍໃຫ້ທ່ານສາມາດ ກຳ ນົດ ຈຳ ນວນຖັນທີ່ຈະພິມ (ຄ່າເລີ່ມຕົ້ນແມ່ນ 130), ໂດຍການໃຊ້ປຸ່ມ -w ປ່ຽນດັ່ງຕໍ່ໄປນີ້.

$ sdiff -w 150 du.txt cal.txt

ຂະຫຍາຍ Tabs ໄປ Spaces

9. ເພື່ອຂະຫຍາຍແທັບເປັນຊ່ອງຫວ່າງໃນຜົນຜະລິດ, ໃຫ້ໃຊ້ຕົວເລືອກ -t .

$ sdiff -t du.txt cal.txt

ດໍາເນີນການ sdiff ໂຕ້ຕອບ

10. ທຸງ -o ຊ່ວຍໃຫ້ມັນສາມາດປະຕິບັດການໂຕ້ຕອບກັນຫຼາຍຂື້ນແລະສົ່ງຜົນຜະລິດເຂົ້າໃນແຟ້ມເອກະສານ. ໃນ ຄຳ ສັ່ງນີ້, ຜົນຜະລິດຈະຖືກສົ່ງໄປທີ່ແຟ້ມ sdiff.txt, ກົດ Enter ຫຼັງຈາກທີ່ເຫັນສັນຍານ % , ເພື່ອໃຫ້ໄດ້ເມນູແບບໂຕ້ຕອບ.

$ sdiff du.txt cal.txt -o sdiff.txt

Filesystem      Size  Used Avail Use% Mounted on	      |	     April 2018       
udev            3.9G     0  3.9G   0% /dev		      |	Su Mo Tu We Th Fr Sa  
tmpfs           788M  9.7M  779M   2% /run		      |	 1  2  3  4  5  6  7  
/dev/sda10      324G  265G   43G  87% /			      |	 8  9 10 11 12 13 14  
tmpfs           3.9G  274M  3.6G   7% /dev/shm		      |	15 16 17 18 19 20 21  
tmpfs           5.0M  4.0K  5.0M   1% /run/lock		      |	22 23 24 25 26 27 28  
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup	      |	29 30                 
/dev/loop2       82M   82M     0 100% /snap/core/4206	      |	                      
/dev/loop4      181M  181M     0 100% /snap/vlc/190	      <
/dev/loop1       87M   87M     0 100% /snap/core/4407	      <
/dev/loop0      189M  189M     0 100% /snap/vlc/158	      <
/dev/loop3       83M   83M     0 100% /snap/core/4327	      <
cgmfs           100K     0  100K   0% /run/cgmanager/fs	      <
tmpfs           788M   40K  788M   1% /run/user/1000	      <
% 
ed:	Edit then use both versions, each decorated with a header.
eb:	Edit then use both versions.
el or e1:	Edit then use the left version.
er or e2:	Edit then use the right version.
e:	Discard both versions then edit a new one.
l or 1:	Use the left version.
r or 2:	Use the right version.
s:	Silently include common lines.
v:	Verbosely include common lines.
q:	Quit.
%

ໃຫ້ສັງເກດວ່າທ່ານ ຈຳ ເປັນຕ້ອງມີບາງສ່ວນຂອງບັນນາທິການເຊັ່ນ: ຕິດຕັ້ງ ed ຢູ່ໃນລະບົບຂອງທ່ານກ່ອນທີ່ຈະ ນຳ ໃຊ້, ໃນສະຖານະການນີ້.

ເອີ້ນໂປແກຼມອື່ນເພື່ອປຽບທຽບເອກະສານ

11. ການປ່ຽນລະຫັດ - ແບບ - ໂປແກມ ຊ່ວຍໃຫ້ທ່ານສາມາດໂທຫາເຄື່ອງມືເສັ້ນ ຄຳ ສັ່ງອື່ນ, ນອກ ເໜືອ ຈາກ sdiff ເອງເພື່ອປຽບທຽບເອກະສານ, ຕົວຢ່າງທ່ານສາມາດເອີ້ນໂປແກຼມ diff ດັ່ງທີ່ສະແດງ.

$ sdiff --diff-program=diff du.txt cal.txt

ສຳ ລັບຂໍ້ມູນເພີ່ມເຕີມ, ປຶກສາ ໜ້າ ຜູ້ຊາຍ sdiff.

$ man sdiff

ໃນບົດຂຽນນີ້, ພວກເຮົາໄດ້ເບິ່ງຕົວຢ່າງເຄື່ອງມືທີ່ໃຊ້ໃນເສັ້ນ ຄຳ ສັ່ງ sdiff ສຳ ລັບຜູ້ເລີ່ມຕົ້ນ. ຖ້າທ່ານມີ ຄຳ ຖາມໃດໆ, ໃຫ້ໃຊ້ແບບຟອມ ຄຳ ເຫັນຂ້າງລຸ່ມນີ້ເພື່ອຕິດຕໍ່ຫາພວກເຮົາ.