Ubuntu හි ගොනු කාර්යක්ෂමව සොයා ගැනීම: find, locate, grep සහ GUI මෙවලම් පාලනය

目次

1. හැඳින්වීම

Ubuntu යනු පුළුල් ලෙස භාවිතා වන Linux බෙදාහැරීමකි, සහ ප්‍රභාවී ගොනු සෙවීමේ තාක්ෂණයන් අත්හදා බැලීම දිනපතා වැඩ ප්‍රවාහ කාර්යක්ෂමතාව වැඩිදියුණු කිරීම සඳහා අත්‍යවශ්‍ය වේ.
මෙම ලිපිය Ubuntu හි ලබා ගත හැකි ගොනු සෙවීමේ විධාන සහ මෙවලම් පැහැදිලිව, ආරම්භකයන් සහ මධ්‍යම මට්ටමේ පරිශීලකයන් දෙදෙනාටම අවබෝධයක් ලබා දෙන ආකාරයෙන් විස්තර කරයි.
අපි සෙවීමේ කාර්යක්ෂමතාව වැඩිදියුණු කිරීමේ ක්‍රම සහ ගැටළු විසඳුම් පිළිබඳද කථා කරන බැවින්, කරුණාකර සම්පූර්ණයෙන් කියවන්න.

2. මූලික ගොනු සෙවීමේ විධාන

Ubuntu ගොනු සෙවීමට භාවිතා කළ හැකි විවිධ මූලික විධාන ලබා දේ.
මෙම කොටසේ, find සහ locate වැනි සාමාන්‍ය විධාන පැහැදිලි කරමු.

2.1 find විධානය කුමක්ද?

find විධානය යනු නියමිත නාමාවලිය තුළ ගොනු නාමයන් හෝ සෙවීමේ කොන්දේසි මත ගොනු සොයා ගැනීමට භාවිතා කරන බලවත් මෙවලමකි.

find විධානයේ මූලික ව්‍යුහය

find [starting_directory] [search_conditions]

උදාහරණය: නිවසේ නාමාවලිය තුළ “example.txt” නමැති ගොනුව සෙවීම

find ~/ -name "example.txt"

find විධානයේ විකල්ප උදාහරණ

  • -name : ගොනු නාමය අනුව සෙවීම (අකුරු සංවේදී)
  • -iname : ගොනු නාමය අනුව සෙවීම (අකුරු සංවේදී නොවන)
  • -type : ගොනු වර්ගය නියම කිරීම (d = නාමාවලිය, f = ගොනුව)
  • -size : ගොනු ප්‍රමාණය අනුව සෙවීම (උදාහරණය: +1M යනු 1 MB හෝ ඊට වැඩි)

2.2 locate විධානය කුමක්ද?

locate විධානය ඉතා වේගවත් සෙවීමේ කාර්යක්ෂමතාව සඳහා ප්‍රසිද්ධය. එහෙත්, ප්‍රතිඵලය දත්ත සමුදායක් මත පදනම් වේ.

locate විධානයේ මූලික ව්‍යුහය

locate [file_name_or_partial_path]

උදාහරණය: නාමය තුළ “example” අඩංගු ගොනු සෙවීම

locate example

locate ගැන වැදගත් සටහන්

locate දත්ත සමුදායක් භාවිතා කරන බැවින්, නවතම ගොනු ප්‍රතිඵලවල පෙනී නොහැකි විය හැක. එවැනි අවස්ථාවක, පහත විධානය භාවිතා කර දත්ත සමුදාය යාවත්කාලීන කරන්න:

sudo updatedb

2.3 find සහ locate කවදා භාවිතා කළ යුතුද?

  • find : විස්තරාත්මක කොන්දේසි සමඟ සෙවීමට සුදුසුය.
  • locate : ඉක්මන් සෙවීම් සඳහා අත්‍යවශ්‍යය.

3. find විධානයේ විස්තරාත්මක මාර්ගෝපදේශය

find විධානය විශාල ක්‍රියාකාරිත්වයක් ලබා දේ, එහි විකල්පයන් අත්හදා බැලීමෙන් ඉතා කාර්යක්ෂම සෙවීම් සිදු කළ හැක.
මෙම කොටස ප්‍රායෝගික උදාහරණ සමඟ විස්තරාත්මක පැහැදිලි කිරීම් ලබා දේ.

3.1 ගොනු නාමය අනුව සෙවීම

-name හෝ -iname විකල්පය භාවිතා කර ගොනු නාමය අනුව සෙවිය හැක.

උදාහරණය: .txt දිගුව ඇති සියලු ගොනු සෙවීම

find ~/ -name "*.txt"

3.2 ගොනු ප්‍රමාණය අනුව සෙවීම

ගොනු ප්‍රමාණය මත සෙවීමේ කොන්දේසි නියම කළ හැක.

උදාහරණය: 1 MB හෝ ඊට වැඩි ගොනු සෙවීම

find ~/ -size +1M

3.3 සංශෝධන දිනය අනුව සෙවීම

-mtime විකල්පය භාවිතා කර, නියමිත දින ගණනක් තුළ සංශෝධනය කර ඇති ගොනු සෙවිය හැක.

උදාහරණය: පසුගිය 7 දින තුළ යාවත්කාලීන කර ඇති ගොනු සෙවීම

find ~/ -mtime -7

3.4 සෙවීම් ප්‍රතිඵල මත ක්‍රියාකාරිත්වය සිදු කිරීම

සෙවීම් ප්‍රතිඵල මත විශේෂ ක්‍රියා (උදාහරණයක් ලෙස මකා දැමීම) සිදු කළ හැක.

උදාහරණය: සෙවීම් අතර හමු වූ ගොනු මකා දැමීම

find ~/ -name "*.tmp" -exec rm -f {} \;

4. locate විධානයේ උසස් භාවිතය

locate විධානය භාවිතයට පහසු වීමත්, ඉතා වේගවත් වීමත් සමඟ, එය වැඩි දියුණු ලෙස භාවිතා කළ හැක.
මෙම කොටස locate උපයෝගී කර ගැනීමට ප්‍රායෝගික ක්‍රම හඳුන්වා දෙයි.

4.1 අර්ධ මාර්ග භාවිතයෙන් සෙවීම

නියම ගොනු නාමය මත මතක නොමැතිව, ගොනු මාර්ගයේ කොටසක් භාවිතා කර සෙවිය හැක.

උදාහරණය: නිවසේ නාමාවලිය තුළ “Documents” සම්බන්ධ ගොනු සෙවීම

locate ~/Documents

4.2 සෙවීම් ප්‍රතිඵල පිරිසිදු කිරීම

locate සමඟ grep එකතු කර සෙවීම් ප්‍රතිඵල සීමා කළ හැක.

උදාහරණය: .txt දිගුව ඇති ගොනු පමණක් පෙන්වීම

locate example | grep ".txt"

5. grep සමඟ ගොනු සෙවීම එකතු කිරීම

ගොනු නාමය පමණක් නොව, ගොනු අන්තර්ගතය සෙවීමට අවශ්‍ය නම්, grep විධානය ඉතා ප්‍රයෝජනවත් වේ.
මෙම කොටස grep එකක් ලෙස පමණක් භාවිතා කිරීම සහ find හා locate සමඟ එකතු කර වැඩි දියුණු ගොනු සෙවීම් සිදු කිරීම පෙන්වයි.

5.1 grep විධානයේ මූලික කරුණු

grep විධානය යනු ගොනුවක අන්තර්ගතය තුළ නියමිත පදයක් (string) අඩංගු පේළි සොයා ගැනීමට භාවිතා කරයි.

grep විධානයේ මූලික ව්‍යුහය

%%CODEBLOCK11%% (placeholder for the actual code block)

grep [options] "search_string" [file]

උදාහරණය: ගොනුවක “Ubuntu” වචනය අඩංගු රේඛා සෙවීම

grep "Ubuntu" example.txt

සුලබ grep විකල්ප

  • -i : අකුරු මූලිකත්වය නොසලකා හරින සෙවීම
  • -r : පුනරාවර්තන සාරාධාරක සෙවීම
  • -n : සමගන්ධන රේඛා අංක පෙන්වීම

5.2 find සමඟ grep භාවිතා කිරීම

ඔබට find භාවිතා කර නිශ්චිත ගොනු සෙවීමට හැකි අතර, ඉන්පසු ඒවායේ අන්තර්ගතය grep භාවිතා කර පරීක්ෂා කළ හැක.

උදාහරණය: .log ගොනු තුළ “error” පදය සෙවීම

find ~/ -name "*.log" -exec grep "error" {} \;

5.3 locate සමඟ grep භාවිතා කිරීම

ඔබේ සෙවුම සංවිධානය කිරීම සඳහා locate ප්‍රතිඵල grep භාවිතා කර සමනය කරන්න.

උදාහරණය: “example” වචනය අඩංගු .txt ගොනු සෙවීම

locate "*.txt" | grep "example"

6. GUI මෙවලම් භාවිතා කර ගොනු සෙවීම

ඔබ CLI (කමාන්ඩ් ලයින් අන්තර්ගතය) සමඟ සුවපහසු නොවේ නම් හෝ දෘශ්‍යමය මෙහෙයුම් කැමති නම්, GUI මෙවලම් සහජ සෙවුම් අත්දැකීමක් සපයයි.
මෙම කොටස Ubuntu හි බිලිංගු විශේෂාංග සහ නිර්දේශිත තෙවන පාර්ශව මෙවලම් පැහැදිලි කරයි.

6.1 Ubuntu හි බිලිංගු සෙවුම් ශක්තිය

Ubuntu ගොනු කළමනාකරු (Nautilus) තුළ බිලිංගු සෙවුම් හැකියාවන් ඇතුළත් වේ.

සෙවීමට කෙසේද

  1. ගොනු කළමනාකරු විවෘත කරන්න.
  2. ඔබ සෙවීමට අවශ්‍ය කොටුව තෝරන්න.
  3. දකුණු-ඉහළ කොනේ සෙවුම් තීරුවට මූල පද ඇතුළත් කරන්න.

මෙය රූප හෝ ලේඛන ඉක්මනින් සොයා ගැනීමට ගුණදායක වේ.

6.2 තෙවන පාර්ශව සෙවුම් මෙවලම්

Ubuntu වැඩිදියුණු සෙවුම් මෙවලම් ලබා දෙයි. මෙන්න උදාහරණ කිහිපයක්:

Catfish

වේගවත් ගොනු සෙවීම් සඳහා සැහැල්ලු GUI-අඩංගු සෙවුම් මෙවලමක්.

  • ** ස්ථාපනය**
    sudo apt install catfish
    
  • භාවිතය Catfish ආරම්භ කර සෙවුම් තීරුවේ මූල පද ඇතුළත් කර සෙවුම් ප්‍රතිඵල දැකීම.

FSearch

Windows “Everything” හා සමාන ඩෙස්ක්ටොප් සෙවුම් මෙවලමක්.

  • ** ස්ථාපනය**
    sudo apt install fsearch
    
  • විශේෂාංග
  • සුචි නිර්මාණය භාවිතා කර ඉහළ වේග සෙවුම්
  • පරිශීලක හිතකාමී සහ සරල අන්තර්ගතය

7. සෙවුම් වේගය සහ කාර්යක්ෂමතා වැඩිදියුණු කිරීමේ ඉඟි

ගොනු සෙවුම් කාර්ය සාධනය සැලකිය යුතු ලෙස වැඩිදියුණු කළ හැකි නිශ්චිත තාක්ෂණයන් තිබේ.
මෙම කොටස වේගවත් සෙවුම් මෙහෙයුම් සඳහා ක්‍රියාකාරී ඉඟි සපයයි.

7.1 සුචිකරණය භාවිතා කිරීම

බොහෝ ගොනු සමඟ වේගවත් ප්‍රතිඵල ලබා ගැනීමට locate වැනි සුචි-අඩංගු සෙවුම් මෙවලම් ඉඩ සලසයි.
නවතම ගොනු ඇතුළත් කිරීමට දත්ත සමුදාය නිතිපතා යාවත්කාලීන කරන්න.

උදාහරණය: දත්ත සමුදාය යාවත්කාලීන කිරීම

sudo updatedb

7.2 සෙවුම් විෂය පරිච්ඡේදය සීමා කිරීම

ක්‍රියාත්මක කාලය අඩු කිරීමට ඔබේ සෙවුම් පරාසය සීමා කරන්න.

  • නිශ්චිත සාරාධාරක තුළ සෙවීම
  • අනවශ්‍ය ගොනු වර්ග නිෂේධ කිරීම

උදාහරණය: නිවසේ සාරාධාරකයේ PDF ගොනු නිෂේධ කිරීම

find ~/ -type f ! -name "*.pdf"

7.3 වේග උපායමාර්ගීකරණ විකල්ප භාවිතා කිරීම

බොහෝ කමාන්ඩ් වේගවත් සෙවුම් සඳහා විකල්ප ඇතුළත් වේ. උදාහරණයක් ලෙස, find සාරාධාරක ගැඹුර සීමා කිරීමට -maxdepth සපයයි.

උදාහරණය: වත්මන් සාරාධාරකයේ සහ ඊට යටි මට්ටමක පමණක් සෙවීම

find ./ -maxdepth 1 -name "*.txt"

8. ගැටලු විසඳීම

ගොනු සෙවීම අපේක්ෂිත පරිදි ක්‍රියා නොකළ විට සුලබ හේතු සහ විසඳුම් මෙන්න.

8.1 සෙවුම් ප්‍රතිඵල නොමැත

  • හේතුව 1 : වැරදි ගොනු නම
  • විසඳුම: අකුරු මූලිකත්වය නොසලකා හරින -iname විකල්පය භාවිතා කරන්න
  • හේතුව 2 : ගොනුව සඟවා ඇත
  • විසඳුම: සඟවා ගොනු ඇතුළත් කිරීමට -name ".*" එකතු කරන්න

8.2 බලපත්‍ර ගැටලු

ඔබට නිශ්චිත සාරාධාරකවලට ප්‍රවේශය නොමැති විය හැක.

  • විසඳුම : sudo සමඟ කමාන්ඩ් ධාවනය කරන්න
    sudo find / -name "example.txt"
    

8.3 locate නවතම ගොනු පෙන්වන්නේ නැත

සුචි දත්ත සමුදාය පැරණි විය හැක.

  • විසඳුම : updatedb භාවිතා කර යාවත්කාලීන කරන්න
    sudo updatedb
    

9. සාරාංශය

Ubuntu හි කාර්යක්ෂම ගොනු සෙවීම කාර්යක්ෂමතාව බොහෝ දුරට වැඩිදියුණු කරයි.
find, locate, සහ grep ඒකාබද්ධ කිරීමෙන්, GUI මෙවලම් සමඟ, ඔබට ගොනු ඉක්මනින් සහ ඵලදායී ලෙස සොයා ගත හැක.
ඔබේ දෛනික ක්‍රියාකාරකම් ප්‍රවාහයට මෙම ක්‍රම භාවිතා කිරීම උත්සාහ කරන්න.

මෙම ලිපිය අවසන්! මීළඟ කොටසේදී, අපි Linux මෙහෙයුම්වල වැඩිදියුණු ක්‍රම සහ Ubuntu හි ගොනු කළමනාකරණය සඳහා ගුණදායක ඉඟි ආවරණය කරමු. බලා සිටින්න!

FAQ: Ubuntu හි ගොනු සෙවීම පිළිබඳ නිතර අසන ප්‍රශ්න

Q1. නියමිත දිගුවක් (extension) ඇති ගොනු පමණක් කෙසේ සෙවිය හැකිද?

A1. find විධානය භාවිතා කරන්න. උදාහරණයක්: ඔබේ නිවසේ නාමාවලියේ .txt ගොනු සෙවීම:

find ~/ -name "*.txt"

Q2. locate නවතම ගොනු සොයා ගැනීමට නොහැකි වන්නේ ඇයි?

A2. locate ස්වයංක්‍රීයව යාවත්කාලීන නොවන දත්ත ගබඩාවක් භාවිතා කරයි. එය අතින් නවීකරණය කිරීමට පහත විධානය ක්‍රියාත්මක කරන්න:

sudo updatedb

Q3. “Permission denied” දෝෂය ඇයි ලැබෙන්නේ?

A3. සමහර නාමාවලියන්ට පරිපාලක අවසර අවශ්‍ය වේ. sudo භාවිතා කරන්න:

sudo find / -name "example.txt"

Q4. මගේ GUI සෙවුම් මෙවලම ප්‍රතිඵල නොදක්වන විට මට කුමක් කළ යුතුද?

  • සෙවුම් ස්ථානය තහවුරු කරන්න
  • ගොනු නාමය පරීක්ෂා කරන්න හෝ අර්ධ-ගැලපීම් භාවිතා කරන්න
  • දත්ත ගබඩා (index) නවතම තත්ත්වයේ ඇති බව තහවුරු කරන්න

Q5. find භාවිතා කරන විට නියමිත ෆෝල්ඩරයක් ඉවත් (exclude) කරන්නේ කෙසේද?

A5. -prune විකල්පය භාවිතා කරන්න:

find ~/ -path "~/exclude_folder" -prune -o -name "*.txt" -print

Q6. ගොනු නාම පමණක් නොව, ගොනු අන්තර්ගතය සෙවීමට කෙසේද?

A6. grep භාවිතා කරන්න. උදාහරණයක්:

grep "Ubuntu" example.txt

බහු ගොනු සඳහා, පූර්ණ (recursive) සෙවීම භාවිතා කරන්න:

grep -r "Ubuntu" ~/

Q7. locate හෝ find අතර කුමන එක භාවිතා කළ යුතුද?

A7. වේගවත් සෙවුම් සඳහා locate භාවිතා කරන්න, විස්තරාත්මක කොන්දේසි සෙවුම් සඳහා find භාවිතා කරන්න:

  • වේගවත් සෙවුම්: locate
  • උසස් කොන්දේසි සෙවුම්: find
侍エンジニア塾