כיצד להשתמש בפקודה למצוא לינוקס כדי למצוא קבצים

בפוסט זה נסתכל על הלינוקס find פקודה וכיצד לחפש ולמצוא קבצים עם מאפיינים שונים.



לינוקס למצוא פקודה

הלינוקס find הפקודה היא כלי מובנה רב עוצמה שיכול לשמש לאיתור וניהול קבצים וספריות בהתבסס על מגוון רחב של קריטריוני חיפוש.

לדוגמא, אנו יכולים למצוא קבצים לפי שמם, סיומת, גודל, הרשאות וכו '. אנו יכולים גם להשתמש ב find פקודה לחפש טקסט מסוים בתוך קובץ שאיננו יודעים את שמו.


בואו נראה שימוש בשימוש ב- find פקודה עם דוגמאות:

חיפוש קובץ לפי שם

אם אתה יודע את שם הקובץ אך אינך זוכר את הספרייה שהוא נמצא בו תוכל להשתמש בפקודה הבאה מספריית הבסיס:


find . -name sales.csv

פלט לדוגמא:

./accounts/sales.csv

חיפוש קובץ ספציפי בספריה

אם ברצונך לחפש קבצים ספציפיים בספרייה, נוכל להשתמש ב:

find ./test -name testCases*

פלט לדוגמא:

./test/testCases10.txt ./test/testCasesPassed.txt ./test/testCasesFailed.log

במקרה שלעיל, אנו מחפשים רק בספריה './test'.


מצא קבצים לפי סיומת

כדי לחפש ולמצוא קבצים לפי סיומת מסוימת אנו משתמשים:

find . -name *.jpg

פלט לדוגמא:

./test/results/failedTests.jpg ./test/project.jpg ./home/profile_pic.jpg ./tmp/cute-cats.jpg

מצא קבצים או ספריות עם שמות מסוימים

כדי למצוא רק קבצים, עלינו להשתמש ב- -f אוֹפְּצִיָה:

find ./ -type f -name 'results*'

פלט לדוגמא:


./test/results_latest.log ./test/results_archive.pdf

כדי למצוא רק ספריות, עלינו להשתמש בסמל -d אוֹפְּצִיָה:

find ./ -type d -name 'results*'

פלט לדוגמא:

./test/results

מצא קבצים במספר ספריות

אם ברצונך לחפש ולרשום את כל הקבצים עם שם נתון במספר ספריות, תוכל להתחיל את החיפוש בתיקיית השורש, או אם אתה מכיר את הספריות, תוכל לציין אותם.

דוגמא:


find ./test ./logs -name failed*.* -type f

פלט לדוגמא:

./test/failed_tests.txt ./logs/failed_tests.log

מצא קבצים המכילים טקסט מסוים

לפעמים אתה רוצה למצוא קובץ ואתה לא יודע את שמו, אבל אתה יודע שיש בו טקסט מסוים.

אתה יכול להשתמש:

find ./test -type f -exec grep -l -i 'login_scenarios' {} ;

הנה, -i האפשרות משמשת להתעלמות מהמקרים, כך שנמצא Login_Scenarios ו- login_scenarios.


מצא קבצים לפי גודל

אנו יכולים אפילו למצוא קבצים בגדלים שונים. אפשרויות גודל הן:

  • c בתים
  • k קילובייט
  • M מגה-בתים
  • G ג'יגה בייט

לדוגמא כדי למצוא קבצים בגודל מדויק בו אנו משתמשים:

find / -size 10M

וכדי למצוא קבצים הגדולים מגודל מסוים, אנו משתמשים:

find ./test -size +2M

האמור לעיל ימצא את כל הקבצים הגדולים מ -2 MB בתיקיית ./test.

מצא ומחק קבצים ספציפיים

כדי למצוא ולמחוק קבצים ספציפיים שאנו משתמשים בהם:

find . -type f -name 'temp*' -exec rm {} ;

סיכום

במאמר זה למדת כיצד להשתמש בפקודה linux find לחיפוש קבצים על פי שם, סיומת, גודל וסוג.