Linux Diff கட்டளை

Linux Diff Kattalai



ஒரு விஷயத்தை மற்றொன்றிலிருந்து வேறுபடுத்திக் காட்டக்கூடிய ஒரு கருத்து அல்லது உணர்வாகவே வேறுபாடு அதிகமாக இருக்கும். 'diff' கட்டளை மாறுபாட்டைக் குறிக்கிறது. ஆவணங்களை வரிக்கு வரி பகுப்பாய்வு செய்வதன் மூலம், இந்த கருவி கோப்புகளுக்கு இடையிலான வேறுபாடுகளை நிரூபிக்கிறது. ஒரு ஆவணத்தின் துணை கூறுகளான cmp மற்றும் comm போன்று இல்லாமல், ஒரே மாதிரியான ஆவணங்களை உருவாக்க எந்தப் பிரிவுகளை மாற்ற வேண்டும் என்பதை இது நமக்குத் தெரிவிக்கிறது. நினைவில் கொள்ள வேண்டிய முக்கியமான அம்சம் என்னவென்றால், ஆவணங்கள் ஒரே மாதிரியாக இருக்க, வேறுபாடு குறிப்பிட்ட சிறப்பு சின்னங்கள் மற்றும் கட்டளைகளைப் பயன்படுத்துகிறது. மற்ற ஆவணத்துடன் ஒத்துப்போகும் வகையில் முதல் ஆவணத்தை எவ்வாறு மாற்றுவது என்பது குறித்த வழிமுறைகள் உங்களுக்கு வழங்கப்பட்டுள்ளன. இந்த வழிகாட்டியில், லினக்ஸ் டெர்மினலைப் பயன்படுத்தி உபுண்டு 20.04 இல் 'diff' கட்டளையைப் பயன்படுத்துவதைப் பற்றி விவாதிப்போம்.

எங்கள் கணினியின் வேலை செய்யும் கோப்புறையில் இரண்டு உரை கோப்புகளை உருவாக்கி வருகிறோம்.









இரண்டு கோப்பு உள்ளடக்கங்களுக்கும் இடையிலான வேறுபாட்டைக் காட்ட, வினவல் பகுதியில் 'வேறுபாடு' வழிமுறையைப் பயன்படுத்த வேண்டிய நேரம் இது. இந்த 'வேறுபாடு' வழிமுறையை இரண்டு கோப்புப் பெயர்களுடன் ஒரு வரிசையில் முயற்சிக்கிறோம், அதாவது முதலில் one.txt மற்றும் இரண்டு.txt கோப்பு. 'diff' கட்டளை செயல்படுத்தல் இரண்டு கோப்புகளுக்கும் இடையிலான வேறுபாட்டை நமக்குக் காட்டுகிறது:



  • முதல் உரை கோப்பின் படி வரி எண்கள்.
  • மாற்றம், சேர், நீக்கு போன்ற வேறுபாட்டைப் பற்றி எங்களுக்குத் தெரிவிக்க சிறப்பு எழுத்துக்கள்/சின்னங்கள்.
  • இரண்டாவது உரை கோப்பின் படி வரி எண்கள்.

எங்கள் முதல் விளக்கத்தில், 'diff' கட்டளை வெளியீட்டின் வரி எண்களில் 'a' குறியீட்டை விரிவாகக் கூறுகிறோம்; 'A' என்பது 'சேர்' என்பதன் சுருக்கமாக பயன்படுத்தப்படுகிறது. வினவல் பகுதியில் இரண்டு கோப்புப் பெயர்களுடன் 'cat' அறிவுறுத்தலைப் பயன்படுத்துவது ஒவ்வொரு உரைக் கோப்பிலும் உள்ள உள்ளடக்கத்தை தனித்தனியாகக் காட்டுகிறது, அதாவது one.txt மற்றும் two.txt. முதல் கோப்பில் மொத்தம் 4 வரிகள் உள்ளன, இரண்டாவது கோப்பில் 5 வரிகள் உள்ளன. வரி 1 கூடுதல்.





பின்னர், டெர்மினல் வினவல் பகுதியில் உள்ள 'வேறுபாடு' வழிமுறையை முயற்சிப்போம், அதைத் தொடர்ந்து கோப்புகளின் பெயர்கள் - one.txt மற்றும் two.txt. இந்த அறிவுறுத்தலின் செயலாக்கமானது இரண்டாவது கோப்பில் கூடுதல் வரியான இரண்டாவது கோப்பிலிருந்து வரி 1 உடன் வெளியீட்டாக “0a1” ஐக் காட்டுகிறது. '0' என்ற எண் மதிப்பு வரி 0 க்கு அல்லது முதல் கோப்பின் வரி 1 க்கு முன் பயன்படுத்தப்படுகிறது, அதாவது one.txt. 'a' என்பது 'சேர்' என்று பொருள்படும். இறுதியாக, எண் மதிப்பு '1' என்பது இரண்டாவது கோப்பின் முதல் வரியைக் குறிக்கிறது. கலவை வெளியீடு '0d1' என்பது 'two.txt' என்ற இரண்டாவது கோப்பின் வரி 1 ஐ முதல் கோப்பான 'one.txt' ன் மேல் சேர்க்கப்பட வேண்டும் என்பதாகும்.



இப்போது, ​​மற்றொரு விளக்கப்படத்தைப் பார்க்க இரண்டு கோப்புகளையும் புதுப்பிக்கிறோம். முதல் கோப்பு “one.txt” 4 வரிகளைக் கொண்டுள்ளது மற்றும் இரண்டாவது கோப்பு “two.txt” 3 வரிகளை மட்டுமே கொண்டுள்ளது. இந்த கோப்புகளுக்கான ஒரே வித்தியாசம் முதல் கோப்பில் கூடுதல் வரியைப் பயன்படுத்துவதாகும், அதாவது இரண்டாவது கோப்பில் இல்லாத வரி 1 = 'திங்கள்'. புதுப்பிக்கப்பட்ட உரைக் கோப்புகளுக்கான 'வேறுபாடு' வழிமுறையை முயற்சித்த பிறகு, '1d0' வெளியீட்டைப் பெறுவோம். மேலும் முதல் கோப்பிலிருந்து முதல் வரி காட்டப்படும். “1d0” இல், 1 என்றால் “one.txt” கோப்பிலிருந்து முதல் வரி நீக்கப்பட வேண்டும் (“d” குறியீட்டின் படி), மற்றும் 0 என்பது இரண்டாவது கோப்பில் எந்த புதுப்பிப்பும் இல்லை என்று அர்த்தம். முடிவில், முதல் கோப்பில் “one.txt” வரி 1 தெளிவான வேறுபாட்டிற்காக காட்டப்படும்.

இதேபோல், 'diff' கட்டளை இரண்டு கோப்புகளின் வரிகளுக்கு இடையில் ஒரு வித்தியாசத்தைக் காண்பிக்கும். எனவே, இரண்டு உரை கோப்புகளையும் மீண்டும் ஒருமுறை புதுப்பிக்கிறோம். இந்த நேரத்தில், முதல் கோப்பில் 5 வரிகள் உள்ளன, இரண்டாவது கோப்பில் 4 மட்டுமே உள்ளது. ஒரே வித்தியாசம் என்னவென்றால், one.txt ல் கூடுதல் வரியைப் பயன்படுத்துவதுதான் வரி 3. டெர்மினலில் உள்ள இரண்டு கோப்புகளிலும் பயன்படுத்தப்படும் diff கட்டளை ஒரு முதல் கோப்பான “one.txt” இலிருந்து வரி 3 உடன் “3d2” வெளியீடு. 'one.txt' முதல் கோப்பிலிருந்து வரி 3 நீக்கப்பட வேண்டும் என்பதை இந்த வெளியீடு காட்டுகிறது, இதனால் இரண்டு கோப்புகளையும் இரண்டாவது கோப்பின் வரி 2 இல் ஒத்திசைக்க முடியும். '3' என்ற வித்தியாசமான வரி காட்டப்படும், இதனால் வித்தியாசத்தைப் பற்றிய தெளிவான யோசனையைப் பெறலாம்.

வெளியீட்டை தெளிவாகவும் ஆழமாகவும் பார்க்கலாம். பின்வரும் படத்தின் 1,5c1,2 வெளியீடு, முதல் கோப்பின் (one.txt) 1 முதல் 5 வரையிலான வரிகள் இரண்டாவது கோப்பின் (two.txt) 1 முதல் 2 வரிகளுடன் மாற்றப்பட வேண்டும் என்பதைக் காட்டுகிறது. அதாவது one.txt கோப்பின் முதல் 5 வரிகள் (1 முதல் 5 வரை) மாற்றப்பட்டு, இரண்டாவது கோப்பின் 'two.txt' இன் முதல் இரண்டு வரிகளை (1, 2) மாற்ற வேண்டும். முடிவில், முதல் கோப்பிலிருந்து அனைத்து 5 வரிகளும் காட்டப்படும், அவை இரண்டாவது கோப்பின் காட்டப்படும் 2 வரிகளுடன் மாற்றப்பட வேண்டும். 'c' குறியீடு இரண்டு கோப்புகளுக்கு இடையே உள்ள வித்தியாசத்தை இப்படித்தான் சொல்கிறது - இரண்டு கோப்புகளிலும் எந்த வரியும் ஒரே மாதிரியாக இருக்காது.

'diff' கட்டளை அதன் வெளியீட்டை சூழல் வடிவத்தில் பெற அனுமதிக்கிறது. இந்தக் கோப்புகளில் பின்வரும் தரவுகளுடன் ஒரே இரண்டு கோப்புகள் உங்களிடம் இருப்பதாக கற்பனை செய்து பாருங்கள். வெளியீட்டைச் சுற்றியுள்ள சூழல் பின்வரும் படத்தில் காட்டப்பட்டுள்ள மொத்த எளிய கோப்புகளுக்கு இடையிலான முக்கிய வேறுபாட்டைக் காண்பிக்கும். இப்போது, ​​“one.txt” என்ற முதல் கோப்பில் 5 வரிகளும், “two.txt” என்ற இரண்டாவது கோப்பில் 4 வரிகளும் உள்ளன.

'diff' அறிவுறுத்தலின் சூழல் அடிப்படையிலான வெளியீட்டைப் பெற, 'diff' கட்டளைக்குள் '-c' விருப்பத்தைப் பயன்படுத்த வேண்டும். இந்த 'diff' கட்டளையில் ஏற்கனவே புதுப்பிக்கப்பட்ட கோப்புகளைப் பயன்படுத்தி, பின்வரும் வெளியீட்டைப் பெறுகிறோம் - தேதி, நாள், கோப்புகளுக்குள் உரை உருவாக்கம் தொடர்பான கூடுதல் தகவல்களுடன். one.txt கோப்புகளில் இருந்து 5 வரிகள் காட்டப்படும். மிக குறிப்பாக, அதன் மூன்றாவது வரியை மற்றொரு கோப்பில் சேர்க்க '-' எழுத்தைப் பயன்படுத்தி ஹைலைட் செய்யப்படுகிறது.

முடிவுரை

'வேறுபாடு' அறிவுறுத்தல் பற்றி அனைத்தையும் சுருக்கமாக விளக்க முயற்சித்தோம். இதற்காக, ஒவ்வொரு முறையும் எங்கள் உரைக் கோப்புகளை புதுப்பித்து, கோப்பில் உள்ள தரவைச் சேர்ப்பது, நீக்குவது மற்றும் மாற்றுவதற்கான மேம்படுத்தப்பட்ட வெளியீட்டைப் பெற்றோம். லினக்ஸில் 'diff' கட்டளையைப் பயன்படுத்துவதன் நோக்கம் மற்றும் அதை லினக்ஸுக்கு எவ்வாறு பயன்படுத்துவது என்பதை அறிமுகம் விளக்கியது.