انجمنهای فارسی اوبونتو
کمک و پشتیبانی => انجمن عمومی => نویسنده: norouzi90 در 01 خرداد 1401، 08:32 بظ
-
با عرض سلام و احترام،
دیروز بطور اتفاقی به فایلی در سیستمم برخوردم که لازمش داشتم و با mousepad بازش کردم.
ولی متاسفانه نه اسم فایل و نه مسیرش را یادداشت نکردم، حافظه که خدا را شکر ندارم.
می خواستم بدانم آیا در گنو/لینوکس چنین امکاناتی وجود دارد که مجموعه فعالیتهایی که در کل سیستم من دیروز انجام داده ام بصورت history در
جایی ذخیره کند تا در چنین مواقعی مثلا بدانیم که دیروز چه کارهایی انجام داده ایم و چه فایل هایی را باز کرده ایم و ...
تا از آن طریق من بتوانم بدانم دیروز چه فایل هایی باز کرده ام تا از میان آنها فایل موردنظرم را پیدا کنم؟
اگر در خود گنو/لینوکس چنین قابلیتی نیست ، که من فعلا مشکلم را حل بکنم ، آیا نرم افزاری را می شناسید که تاریخچه فعالیتهایم
را در خود ذخیره کند؟
-
معمولا بعضی برنامه ها گزینه Open Recent دارند که لیست فایل های قبلا باز شده رو داره.
در ضمن معمولا مدیریت فایل ها هم قسمت recent دارند که فایل های اخیرا باز شده رو نشون میده
-
واقعا فک نمیکنم خود گنو در این حد بخواد لاگ کنه 🤔
-
۱- تا جایی که یادم است فایل موردنظرم دارای پسوند xml. بوده است ، با چه دستوری می توان کل پارتیشن ریشه را برای یافتن اسامی فایل هایی با پسوند xml. جستجو کند و سپس بصورت صفحه به صفحه خروجی اسامی فایل های مربوطه را به من نشان بدهد یا اینکه خروجی مربوطه را در یک فایل text برایم چاپ بکند؟
۲- نرم افزار Tracker را نصب کردم ، ولی نمی دانم در این زمینه بدرد من می خورد یا نه، متاسفانه این نرم افزار در سیستم من بصورت گرافیکی عمل نمی کند و در ترمینال باز می شود،که بدین نحو کار باهاش یکم برایم سخت است، آیا تنها در گنوم این برنامه بصورت گرافیکی عمل می کند؟چه کار می توانم بکنم که بصورت گرافیکی برای من هم اجرا بشود؟
۳- معمولا عمل جستجو برای نام فایل صورت می گیرد، ولی اگر مثلا یک کلمه از محتوای درون فایل متنی مورد جستجویمان را بدانیم ، آیا این امکان وجود دارد که با دستوری کل فایل های پارتیشن ریشه را از لحاظ محتوایشان بگردد و آن فایل هایی که حاوی این عبارت است را برایمان لیست کند؟ ( منظور جستجویمان برای کلمه مورد نظر در اسامی فایل نیست بلکه در محتوای نوشته شده داخلی فایل ها می باشد.)
اگر امکان داشته باشد دستورشان را برایم بفرمایید؟
ببخشید که در حد لالیگا سخت شد. خوب چرا چپ چپ نگاه می کنید ، اگر نمی خواهید بروم xp بزنم. چکار کنم یادم رفته!!! مغز خودم منگول گنگول شده!
-
۱
sudo find / -type f -iname ".xml" | less -s
دستور find برای پیدا کردن پرونده ها ، sudo هم که برای گرفتن دسترسی ریشه ، اون اسلش هم شاخه ایه که میخوای درش بگرده ، با -type و f یعنی فایل ، واداشتیمش ک دنبال پرونده بگرده نه شاخه و پیوند و دیگر موارد ، -iname هم بدون گیر دادن به کوچکی و بزرگی ، دنبال واژه بین " ها میگرده : ) اندازشم اگه یادته بگو که آسون تر پیداش کنی ! در آخر خروجی رو دادیم به less که صفحه صفحه نشون بده ، میتونی اینجوری بریزیش تو یک پرونده متنی :
sudo find / -type f -iname ".xml" > out.txt
۳
sudo grep -R -l "string" directory
دستور grep برای گشتن در محتوای پرونده ها ، -l برای اینکه در چند پرونده دنبال یک رشته بگرده و نام و نشونیشو نمایش بده ، -R برای انجامش بصورت بازگشتی ، بجای string واژه نیاز و در directory شاخه مورد جستجو رو قرار بده : )
ببخشید که در حد لالیگا سخت شد. خوب چرا چپ چپ نگاه می کنید ، اگر نمی خواهید بروم xp بزنم. چکار کنم یادم رفته!!! مغز خودم منگول گنگول شده!
تهدید میکنی ؟ 😂 دوره بی نظیر آقای هوشمندی راد رو ببین و اینجور داستان ها رو خودت حل کن ، بعدشم دوره الپیک تازه جادی رو ببینی تمومه : )
-
https://www.cyberciti.biz/faq/howto-search-find-file-for-text-string/
-
find (https://www.howtogeek.com/771399/how-to-use-the-find-command-in-linux/)
grep (https://www.howtogeek.com/496056/how-to-use-the-grep-command-on-linux/)
-
با تشکر از msajadi832 , ㅤsudo و unknown .
-
اگه کارها رو از طریق ترمینال انجام دادید، احتمالا میتونید دستوراتی که وارد کردید رو توی فایل تاریخچه پوسته پیدا کنید. پوسته ترمینال اکثر توزیعها bash هست که فایل تاریخچه اون bash_history. هست که توم هوم هر کاربری که bash رو اجرا کرده ذخیره میشه.