আমি এই উত্তরটি দেখেছি ।
উদাহরণস্বরূপ আপনার ইনোটাইফাইট ব্যবহার বিবেচনা করা উচিত:
inotifywait -m /path -e create -e moved_to | while read path action file; do echo "The file '$file' appeared in directory '$path' via '$action'" # do something with the file done
আমার প্রশ্নটি হ'ল উপরের স্ক্রিপ্টটি যে কোনও ধরণের ফাইল তৈরির জন্য ডিরেক্টরি দেখায়, তবে আমি inotifywaitনির্দিষ্ট কমান্ড / এক্সটেনশনের একটি ফাইল তৈরি হলে (বা ডিরেক্টরিতে স্থানান্তরিত) কেবল তখনই প্রতিবেদন করার আদেশটি কীভাবে পরিবর্তন করব - উদাহরণস্বরূপ এটি হওয়া উচিত কোন .xmlফাইল তৈরি করা হয় যখন রিপোর্ট ।
আমি যা চেষ্টা করেছি:
আমি inotifywait --helpকমান্ডটি চালিয়েছি এবং কমান্ড লাইন অপশনগুলি পড়েছি। এটা আছে --exclude <pattern>এবং --excludei <pattern>কমান্ড বহির্ভূত (Regex ব্যবহার করে) নির্দিষ্ট প্রকারের ফাইলগুলি, কিন্তু আমি একটি উপায় প্রয়োজন শুধু অন্তর্ভুক্ত একটি নির্দিষ্ট প্রকার / এক্সটেনশন ফাইল।
pathউপরের ব্যবহারটি সম্ভবত সেরা শ্যাওলারের সাথে নাম ব্যবহার করা উচিত নয়। আপনি যদি এটি ব্যবহার করেন তবে আপনি কমান্ড এবং সমস্ত কিছু ব্যবহার করতে পারবেন না যেহেতু এটি মূলত কেবলমাত্র স্ট্যান্ডার্ডকে ছাড়িয়েছেPATH। সুতরাং আমিfpathপরিবর্তে মত একটি বিকল্প বর্ণ নাম ব্যবহার করার পরামর্শ দিচ্ছি । অর্থাত্while read fpath action fileআপনার শেল থেকে সাধারণত পাওয়া যায় এমন কোনও মানক কমান্ড এখনও থাকবে।