ইউনিক্সে শেষ ঘন্টা তৈরি হওয়া ফাইলগুলি কীভাবে সন্ধান করবেন


134

ইউনিক্সে শেষ ঘন্টা তৈরি হওয়া ফাইলগুলি কীভাবে সন্ধান করবেন

উত্তর:


212

দির যদি সন্ধান করতে হয় srch_dirতবে হয়

$ find srch_dir -cmin -60 # change time

অথবা

$ find srch_dir -mmin -60 # modification time

অথবা

$ find srch_dir -amin -60 # access time

শেষ ঘন্টা তৈরি, সংশোধিত বা অ্যাক্সেস করা ফাইলগুলি দেখায়।

সংশোধন: সিটিটাইম নোড সময় পরিবর্তনের জন্য (যদিও নিশ্চিত নয়, দয়া করে আমাকে সংশোধন করুন)


2
এটি দুর্দান্ত এবং সব কিছু, তবে এই পতাকাগুলি সোলারিসে নেই findযা আমি ব্যবহার করছি। ইউপি বলেছেন ইউনিক্স এবং আমি মনে করি এগুলি কেবল লিনাক্স।
জিগি

11
কৌশলটি নেতিবাচক সময় মান ব্যবহার করা হয় ! ম্যান পেজে এটি এতটা স্পষ্ট নয়।
sphakka

@ জিগি আয়ুশের উত্তরটি হ্যাক দেয় (উপর ভিত্তি করে -newer) যা সোলারিসে কাজ করা উচিত।
ডেভিড মোলস

3
-কিনেম তৈরির সময় নয় বরং সময় পরিবর্তন করুন! পরীক্ষা চালানোর সময় আমার .কফিগ দির কারণটি মুছে ফেলা হয়েছে এটি শেষ এক্স মিনিটের সাথে পরিবর্তন করা হয়নি এবং আমি যখন আরএম করেছি তখন এটি ছিল ... তাই সম্ভবত এটি সম্পাদনা করুন ...!
ব্যাডমাস্টার

আমি এখনও মনে করি প্রথম উদাহরণ মন্তব্যটির একটি সংশোধন দরকার। "পরিবর্তনের সময়" হ'ল ফাইলের স্থিতি, ফাইলের ডেটা নয়
কেসি বাল্টজ

24

ইউনিক্স ফাইল সিস্টেমগুলি (সাধারণত) তৈরির সময় সংরক্ষণ করে না। পরিবর্তে, কেবলমাত্র অ্যাক্সেসের সময়, (ডেটা) সংশোধন করার সময় এবং (ইনোড) পরিবর্তনের সময় রয়েছে।

যা বলা হচ্ছে, findতার -atime -mtime -ctimeপূর্বাভাস দিয়েছে:

1 মানুষ 1 খুঁজে
...
-কটাইম   এন
        প্রাইমারিটি শেষ হিসাবে পরিবর্তনের সময় হিসাবে সত্য হিসাবে মূল্যায়ন করবে
        আরম্ভের সময় থেকে ফাইল স্থিতির তথ্য বিয়োগ করা হয়,
        86400 দ্বারা বিভক্ত (যে কোনও বাকী ফেলে দেওয়া আছে), এন।
...

এইভাবে find -ctime 0ইনোড পরিবর্তিত হয়েছে এমন সমস্ত কিছুই খুঁজে পায় (উদাহরণস্বরূপ ফাইল তৈরি করা অন্তর্ভুক্ত রয়েছে তবে লিংক গণনা এবং অনুমতি এবং ফাইলসাইজ পরিবর্তনগুলিও গণনা করা হয়েছে) এক ঘন্টা আগে।


86400 সেকেন্ড এক দিন নয়, একটি দিন । সুতরাং -ctimeইত্যাদির যুক্তি কয়েক ঘন্টা না হয়ে দিনের এককগুলিতে থাকে।
গাইলন

12

খুঁজে বার করো এই লিঙ্কে এবং তারপর নিজেকে সাহায্য করে।

বেসিক কোড হয়

#create a temp. file
echo "hi " >  t.tmp
# set the file time to 2 hours ago
touch -t 200405121120  t.tmp 
# then check for files
find /admin//dump -type f  -newer t.tmp -print -exec ls -lt {} \; | pg

ধন্যবাদ, তবে এটি কেবল t.tmp অনুসন্ধান করবে। আমি যদি শেষ মুহুর্তে তৈরি সমস্ত ফাইল সন্ধান করতে চাই তবে কী হবে।
অঙ্কুর

2
অঙ্কুর: এটি একটি অস্থায়ী ফাইল t.tmp তৈরি করবে এবং এটির তৈরির সময়টি ২ ঘন্টা আগে নির্ধারণ করবে ... তারপরে এটি বর্তমান ডিরেক্টরিতে t.tmp এর পরে তৈরি হওয়া সমস্ত ফাইল অনুসন্ধান করবে যা গত ২৪ ঘণ্টায় ..
আয়ুষ

4
ঠান্ডা !! যদিও প্রথম আদেশটি প্রয়োজনীয় নয়। touchফাইলটি ইতিমধ্যে বিদ্যমান না থাকলে তৈরি করে।
আমির উয়াল


3
sudo find / -Bmin 60

manপৃষ্ঠা থেকে :

-বমিন এন

কোনও ফাইলের ইনোড তৈরির সময় findএবং পরবর্তী পুরো মিনিট পর্যন্ত গোল করে সময় শুরু করার সময় পার্থক্য যদি হয় তবে এটি ঠিক মিনিট।

স্পষ্টতই, আপনি কিছুটা আলাদাভাবে সেট আপ করতে চাইতে পারেন, তবে এই প্রাথমিকটি শেষ এন মিনিটে তৈরি হওয়া কোনও ফাইল অনুসন্ধান করার জন্য সেরা সমাধান বলে মনে হচ্ছে ।


find (GNU findutils) 4.6.0একটি নেই -Bসম্পৃক্ত
blockloop

0

এই লিঙ্কটি দেখুনআরও তথ্যের জন্য দেখুন।

বর্তমান ডিরেক্টরিতে গত এক ঘন্টা তৈরি হওয়া ফাইলগুলি সন্ধান করতে আপনি -অ্যামিন ব্যবহার করতে পারেন

অনুসন্ধান . -ামিন -60 -প্রকার চ

এটি সর্বশেষ 1 ঘন্টা সহ তৈরি হওয়া ফাইলগুলি সন্ধান করবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.