வழக்கமான வெளிப்பாடுகளைப் பயன்படுத்தி எளிய-உரைத் தரவைத் தேட 6 சிறந்த சி.எல்.ஐ கருவிகள்


இந்த வழிகாட்டி உரை கோப்புகளில் பொருந்தக்கூடிய சரங்களை அல்லது வடிவங்களைத் தேடப் பயன்படும் சில சிறந்த கட்டளை-வரி கருவிகளைப் பார்வையிடுகிறது. இந்த கருவிகள் வழக்கமாக வழக்கமான வெளிப்பாடுகளுடன் பயன்படுத்தப்படுகின்றன - REGEX என சுருக்கப்பட்டது - அவை தேடல் முறையை விவரிப்பதற்கான தனித்துவமான சரங்களாகும்.

மேலும் கவலைப்படாமல், உள்ளே நுழைவோம்.

1. கிரேப் கட்டளை

முதல் இடத்தில் வருவது grep பயன்பாட்டுக் கருவி - இது உலகளாவிய வழக்கமான வெளிப்பாடு அச்சுக்கான சுருக்கமாகும், இது ஒரு சக்திவாய்ந்த கட்டளை-வரி கருவியாகும், இது ஒரு குறிப்பிட்ட சரம் அல்லது ஒரு கோப்பில் ஒரு வடிவத்தைத் தேடும்போது கைக்குள் வரும்.

நவீன லினக்ஸ் விநியோகங்களுடன் இயல்பாக கிரேப் கப்பல்கள் மற்றும் பல்வேறு தேடல் முடிவுகளை வழங்குவதற்கான நெகிழ்வுத்தன்மையை உங்களுக்கு வழங்குகிறது. Grep மூலம், நீங்கள் இது போன்ற பரந்த அளவிலான செயல்பாடுகளைச் செய்யலாம்:

  • ஒரு கோப்பில் சரங்களை அல்லது பொருந்தும் வடிவங்களைத் தேடுங்கள்.
  • Gzipped கோப்புகளில் சரங்களை அல்லது பொருந்தும் வடிவங்களைத் தேடுங்கள்.
  • சரம் பொருத்தங்களின் எண்ணிக்கையை எண்ணுங்கள்.
  • சரம் அல்லது அமைப்பைக் கொண்ட வரி எண்களை அச்சிடுக.
  • கோப்பகங்களில் உள்ள சரத்திற்கு மீண்டும் மீண்டும் தேடுங்கள்.
  • தலைகீழ் தேடலைச் செய்யுங்கள் (அதாவது தேடல் அளவுகோல்களுடன் பொருந்தாத சரங்களின் முடிவுகளைக் காண்பி).
  • சரங்களைத் தேடும்போது வழக்கு உணர்திறனைப் புறக்கணிக்கவும்.

Grep கட்டளையைப் பயன்படுத்துவதற்கான தொடரியல் மிகவும் எளிது:

$ grep pattern FILE

எடுத்துக்காட்டாக, ஒரு கோப்பில் ‘லினக்ஸ்’ சரத்தைத் தேட, வழக்கு உணர்திறனைப் புறக்கணிக்கும்போது hello.txt என்று சொல்லுங்கள், கட்டளையை இயக்கவும்:

$ grep -i Linux hello.txt

நீங்கள் grep உடன் பயன்படுத்தக்கூடிய கூடுதல் விருப்பங்களைப் பெற, எங்கள் கட்டுரையைப் படியுங்கள், இது மிகவும் மேம்பட்ட grep கட்டளை எடுத்துக்காட்டுகளை எடுத்துக்காட்டுகிறது.

2. sed கட்டளை

உரை கோப்பில் கையாளுதல் உரை. கொடுக்கப்பட்ட கோப்பில் செட் தேடுகிறது, வடிகட்டுகிறது மற்றும் மாற்றுகிறது.

முன்னிருப்பாக, sed கட்டளை வெளியீட்டை STDOUT (Standard Out) க்கு அச்சிடுகிறது, இது மரணதண்டனையின் விளைவாக ஒரு கோப்பில் சேமிக்கப்படுவதற்கு பதிலாக முனையத்தில் அச்சிடப்படுவதைக் குறிக்கிறது.

செட் கட்டளை பின்வருமாறு செயல்படுத்தப்படுகிறது:

$ sed -OPTIONS command [ file to be edited ]

எடுத்துக்காட்டாக, ‘யூனிக்ஸ்’ இன் அனைத்து நிகழ்வுகளையும் ‘லினக்ஸ்’ உடன் மாற்ற, கட்டளையைச் செயல்படுத்தவும்:

$ sed 's/Unix/Linux' hello.txt

முனையத்தில் அச்சிடுவதற்குப் பதிலாக வெளியீட்டைத் திருப்பிவிட விரும்பினால், காட்டப்பட்டுள்ளபடி திசைதிருப்பல் அடையாளமான (>) ஐப் பயன்படுத்தவும்.

$ sed 's/Unix/Linux' hello.txt > output.txt

கட்டளையின் வெளியீடு திரையில் அச்சிடப்படுவதற்கு பதிலாக output.txt கோப்பில் சேமிக்கப்படுகிறது.

பயன்படுத்தக்கூடிய கூடுதல் விருப்பங்களைப் பார்க்க, மீண்டும் மேன் பக்கங்களைப் பாருங்கள்.

$ man sed

3. அக் கட்டளை

அக் என்பது பெர்லில் எழுதப்பட்ட வேகமான மற்றும் சிறிய கட்டளை வரி கருவியாகும். கிரெக் பயன்பாட்டிற்கான நட்பு மாற்றாக அக் கருதப்படுகிறது, மேலும் இது பார்வைக்கு ஈர்க்கும் விதத்தில் வெளியிடுகிறது.

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

அக் கட்டளை தொடரியல்:

$ ack [options] PATTERN [FILE...]
$ ack -f [options] [DIRECTORY...]

எடுத்துக்காட்டாக, லினக்ஸ் என்ற தேடல் சொல்லைச் சரிபார்க்க, இயக்கவும்:

$ ack Linux hello.txt

தேடல் கருவி மிகவும் புத்திசாலித்தனமானது மற்றும் பயனரால் கோப்பு அல்லது கோப்பகம் எதுவும் வழங்கப்படவில்லை என்றால், அது தேடல் முறைக்கு தற்போதைய அடைவு மற்றும் துணை அடைவுகளைத் தேடுகிறது.

கீழேயுள்ள எடுத்துக்காட்டில், கோப்பு அல்லது கோப்பகம் எதுவும் வழங்கப்படவில்லை, ஆனால் அக் தானாகவே கிடைக்கக்கூடிய கோப்பைக் கண்டறிந்து வழங்கப்பட்ட பொருந்தும் முறையைத் தேடியது.

$ ack Linux

உங்கள் கணினியில் அக் நிறுவ கட்டளையை இயக்கவும்:

$ sudo apt install ack-grep    [On Debian/Ubuntu]
$ sudo dnf install ack-grep    [On CentOS/RHEL]

4. மோசமான கட்டளை

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

முழு நிரலும் ஒற்றை மேற்கோள்களில் இணைக்கப்பட்டிருக்கும் போது AWK முறை சுருள் பிரேஸ்களுக்கு இடையில் இணைக்கப்பட்டுள்ளது.

எளிமையான உதாரணத்தை எடுத்துக் கொள்வோம். காட்டப்பட்டுள்ளபடி உங்கள் கணினியின் தேதியை அச்சிடுகிறீர்கள் என்று வைத்துக் கொள்வோம்:

$ date

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

$ date | awk '{print $1}'

அடுத்தடுத்த மதிப்புகளைக் காட்ட, காட்டப்பட்டுள்ளபடி கமாவைப் பயன்படுத்தி அவற்றைப் பிரிக்கவும்:

$ date | awk '{print $1,$2}'

மேலே உள்ள கட்டளை வாரத்தின் நாள் மற்றும் மாதத்தின் தேதியைக் காண்பிக்கும்.

நீங்கள் awk உடன் பயன்படுத்தக்கூடிய கூடுதல் விருப்பங்களைப் பெற, எங்கள் awk கட்டளைத் தொடரைப் படிக்கவும்.

5. வெள்ளி தேடுபவர்

வெள்ளி தேடுபவர் ஒரு குறுக்கு-தளம் மற்றும் ஓப்பன் சோர்ஸ் குறியீடு தேடல் கருவியாகும். கோப்புகளுக்குள் ஒரு குறிப்பிட்ட சரத்தை குறுகிய காலத்தில் தேடுவதை இது எளிதாக்குகிறது:

தொடரியல்:

$ ag OPTIONS search_pattern /path/to/file

எடுத்துக்காட்டாக, hello.txt கோப்பில் ‘லினக்ஸ்’ சரத்தைத் தேட கட்டளையை செயல்படுத்தவும்:

$ ag Linux hello.txt

கூடுதல் விருப்பங்களுக்கு, மேன் பக்கங்களைப் பார்வையிடவும்:

$ man ag

6. ரிப்கிரெப்

கடைசியாக, எங்களிடம் ripgrep கட்டளை-வரி கருவி உள்ளது. ரிப்கிரெப் என்பது ரீஜெக்ஸ் வடிவங்களைத் தேடுவதற்கான குறுக்கு-தளம் பயன்பாடு ஆகும். இது முன்னர் குறிப்பிட்ட எல்லா தேடல் கருவிகளையும் விட மிக வேகமானது மற்றும் பொருந்தக்கூடிய வடிவங்களுக்கான கோப்பகங்களை மீண்டும் மீண்டும் தேடுகிறது. வேகம் மற்றும் செயல்திறனைப் பொறுத்தவரை, ரிப்கிரெப் என்று வேறு எந்த கருவியும் இல்லை.

இயல்பாக, ripgrep பைனரி கோப்புகள்/மறைக்கப்பட்ட கோப்புகள் மற்றும் கோப்பகங்களைத் தவிர்க்கும். மேலும், இயல்பாகவே இது .gitignore/.ignore/.rgignore கோப்புகளால் புறக்கணிக்கப்படும் கோப்புகளைத் தேடாது என்றும் அறிவுறுத்தப்படுங்கள்.

குறிப்பிட்ட கோப்பு வகைகளைத் தேடவும் ரிப்கிரெப் உங்களை அனுமதிக்கிறது. எடுத்துக்காட்டாக, உங்கள் தேடலை ஜாவாஸ்கிரிப்ட் கோப்புகள் இயக்கத்துடன் மட்டுப்படுத்த:

$ rg -Tsj

ரிப்கிரெப்பைப் பயன்படுத்துவதற்கான தொடரியல் மிகவும் எளிதானது:

$ rg [OPTIONS] PATTERN [PATH...]

உதாரணத்திற்கு. தற்போதைய கோப்பகத்திற்குள் அமைந்துள்ள கோப்புகளில் ‘லினக்ஸ்’ சரத்தின் நிகழ்வுகளைத் தேட, கட்டளையை இயக்கவும்:

$ rg Linux

உங்கள் கணினியில் ripgrep ஐ நிறுவ பின்வரும் கட்டளைகளை இயக்கவும்:

$ sudo apt install ripgrep      [On Debian/Ubuntu]
$ sudo pacman -S ripgrep        [On Arch Linux]
$ sudo zypper install ripgrep   [On OpenSuse]
$ sudo dnf install ripgrep      [On CentOS/RHEL/Fedora]

கூடுதல் விருப்பங்களுக்கு, மேன் பக்கங்களைப் பார்வையிடவும்:

$ man rg

இவை லினக்ஸில் உரையைத் தேடுவதற்கும், வடிகட்டுவதற்கும், கையாளுவதற்கும் மிகவும் பரவலாகப் பயன்படுத்தப்படும் கட்டளை-வரி கருவிகள். நாங்கள் விட்டுவிட்டதாக நீங்கள் நினைக்கும் பிற கருவிகள் உங்களிடம் இருந்தால், கருத்துப் பிரிவில் எங்களுக்குத் தெரியப்படுத்துங்கள்.