راهنمای عملی: جستجوی فایلها در لینوکس
منتشر شده در 23 September 2024
معرفی
در این مقاله، خواهیم بررسی کرد که چگونه میتوان یک فایل را در اوبونتو با استفاده از ترمینال Zsh جستجو کرد. Zsh (Z شل) یک مفسر خط فرمان قدرتمند و بهطور گستردهای به دلیل انعطافپذیری و ویژگیهای پیشرفتهاش استفاده میشود.
Ubuntu، یک توزیع لینوکس محبوب، چندین ابزار خط فرمان برای جستجوی فایلها ارائه میدهد. ما بررسی خواهیم کرد که چگونه از دستوراتی مانند`find`, locate et `grep`برای یافتن فایلها بهسرعت و مؤثر در ترمینال.
استفاده از دستور `find
دستور`find`اجازه میدهد فایلها را در یک دایرکتوری خاص و زیردایرکتوریهای آن جستجو کنید. سینتکس پایه آن به این صورت است :
find [chemin] -name [nom_du_fichier]
این یک مثال عملی است که ما به دنبال یک فایل با نام`example.txt`در دایرکتوری`/home`:
find /home -name "example.txt"
این دستور تمام زیرپوستهها را پیمایش میکند`/home`و نمایش مسیر کامل فایل اگر پیدا شود.
راهنمای آنلاین فرمان`find` : من یاب
گزینههای اضافی برای `find
سفارش`find`بسیار قدرتمند است و گزینههای 많ی دارد. چند مثال مفید:
-
جستجو بر اساس نوع فایلبرای جستجو فقط فایلها، استفاده کنید`-type f`, و برای جستجوی دایرکتوریها، استفاده کنید`-type d`. - جستجو بر حسب اندازه: شما میتوانید همچنین فایلها را بر اساس اندازه آنها فیلتر کنید، با استفاده از گزینه`-size`. Par exemple, pour rechercher des fichiers de plus de 100 Mo, utilisez :
find /home -size +100M
استفاده از دستور `locate
دستور`locate`سریعتر است از`find`raisons از یک پایگاه دادهٔ پیشفهرستشده از فایلهای موجود در سیستم استفاده میکند. باید ابتدا این پایگاه داده را با دستور زیر بهروز کنید :
sudo updatedb
سپس، میتوانید به این صورت یک فایل جستجو کنید:
locate example.txt
من استفاده میکنمhttps://fr.wikipedia.org/wiki/Z_Shell[zsh]باhttps://github.com/ohmyzsh/ohmyzsh/wiki[oh-my-zsh]، این نشان میدهد که دستور`locate`از … قابل دسترسی نیست`zsh`اما بهطور کامل ممکن است از`bash`, برای رفع این، argument`-c`از سفارش`bash`میتواند یک دستور را اجرا کند`bash`از نوع دیگری از ترمینال.
من اینجا دنبال فایلهایی هستم که با الگو تمام میشوند`001.pdf`در دایرکتوری کاربر
bash -c "locate ~/*001.pdf"
راهنمای آنلاین دستور`locate` : man locate
استفاده از دستور grep برای جستجوی متن در فایلها
اگر میخواهید متن خاصی را در داخل یک فایل جستجو کنید، میتوانید از`grep`. به عنوان مثال، برای یافتن کلمهٔ "Ubuntu" در تمام فایلها`.txt`از دایرکتوری فعلی استفاده کنید :
grep "Ubuntu" *.txt
نتیجه
جستجو برای فایلها در اوبونتو از طریق یک ترمینال Zsh میتواند با استفاده از چندین ابزار قدرتمند انجام شود.`find`انعطافپذیر است و گزینههای متعددی ارائه میدهد، در حالی که`locate`اجازه جستجوی سریع با استفاده از یک پایگاه داده پیشساخت شده میدهد. در نهایت،`grep`به یافتن הופעות متنی در داخل فایلها اجازه میدهد
این دستورات یک طیف کامل از ابزارها را برای شما فراهم میآورند تا جستجوی فایلهای شما مؤثرتر و متناسب با نیازهای شما شود؛ همچنین هر یک از این دستورات یک راهنمای قابل مشاهده همراه خود دارد.man