কোন প্রক্রিয়া দ্বারা কোন ফাইল অ্যাক্সেস করা হচ্ছে তা নির্ধারণ করুন


9

একটি নির্দিষ্ট প্রক্রিয়া অ্যাক্সেস করে সমস্ত ফাইলগুলি কীভাবে খুঁজে পাব?

আমি উবুন্টু 9.04 ব্যবহার করছি।

উত্তর:


11

lsof ফাইল এবং সম্পর্কিত প্রক্রিয়া সম্পর্কিত আইডি তালিকাভুক্ত করবে। কোনও বিকল্প না দেওয়া থাকলে এটি সমস্ত কিছু তালিকাভুক্ত করে।

একটি বিকল্প আছে, -pএকটি একক প্রক্রিয়া জন্য খোলা ফাইল তালিকা। সুতরাং পিআইডি 6714 এর সাথে প্রক্রিয়াটির জন্য এই প্রক্রিয়াটি খোলার ফাইলগুলি তালিকাভুক্ত করবে:

    lsof -p 6714

লিস্টে শুধুমাত্র নিয়মিত ফাইল , grep lsof আউটপুট ফিল্টার করতে ব্যবহার করা যেতে পারে:

    lsof -p 6714 | grep REG

যদি এটি গ্রেপের সাথে তুলনায় আরও দৃ be় হওয়া দরকার তবে -Fবিকল্পটি ব্যবহার করা যেতে পারে তবে এটি আরও জটিল হয়ে ওঠে becomes থেকে lsof man পৃষ্ঠা :

যখন -F বিকল্পটি সুনির্দিষ্ট করা হয়, তখন lsof একটি আউটপুট উত্পাদন করে যা অন্য কোনও প্রোগ্রাম দ্বারা প্রক্রিয়াকরণের জন্য উপযুক্ত - যেমন একটি awk বা পার্ল স্ক্রিপ্ট, বা একটি সি প্রোগ্রাম।

এটি আপনার প্রয়োজনীয়তার উপর নির্ভর করে।


1
আমি lsof এ '-b' যুক্ত করতে চাই, এটি আরও দ্রুত হবে। এছাড়াও, আমি পাইপটি গ্রেপ করার আগে 2> / dev / নাল যুক্ত করি।
— kbyrd
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.