শুরু করা হলে, নীচের স্ক্রিপ্টটি স্বয়ংক্রিয়ভাবে কোনও ডিরেক্টরিতে (এক সময়) প্রদত্ত ধরণের (এক্সটেনশন) সমস্ত ফাইলের অনুমতিগুলি পরিবর্তন করে। এরপরে, স্ক্রিপ্টটি নতুন যুক্ত হওয়া ফাইলগুলির জন্য প্রতি 5 সেকেন্ডের জন্য ডিরেক্টরিটি পরীক্ষা করে এবং ফাইলটি যদি প্রদত্ত ধরণের হয় তবে অনুমতিগুলি পরিবর্তন করে (এই ক্ষেত্রে কোনও .py
ফাইল)
এটা তোলে কয়েকটি বিকল্প আছে: এই ক্ষেত্রে, এটা তোলে নতুন যোগ ফাইল এক্সিকিউটেবল, কিন্তু অন্যান্য কর্ম খুব যেমন লাইন সংজ্ঞায়িত সম্ভব: command = "chmod +x"
। অতিরিক্তভাবে, কোন ধরণের ফাইল (ভাষা সম্প্রসারণ) এর ক্রিয়াটি করা উচিত তা আপনি সংজ্ঞা (পরিবর্তন) করতে পারেন।
কিভাবে ব্যবহার করে
নীচের স্ক্রিপ্টটি একটি খালি ফাইলে অনুলিপি করুন। change_permission.py
কমান্ড দ্বারা এটি হিসাবে সংরক্ষণ করুন এবং পটভূমিতে এটি চালান:
python3 <script> <folder_to_watch>
এই পান্ডুলিপি
#!/usr/bin/env python3
import subprocess
import time
import sys
directory = sys.argv[1]
command = "chmod +x"; check_interval = 5; extensions = (".py")
def current_files():
read = subprocess.check_output(["ls", directory]).decode("utf-8").strip()
return [item for item in read.split("\n") if item[item.rfind("."):] in extensions]
initial_files = current_files()
for file in initial_files:
subprocess.call(["/bin/bash", "-c", command+" "+directory+"/"+file])
while True:
update = current_files()
for file in update:
if not file in initial_files:
subprocess.call(["/bin/bash", "-c", command+" "+directory+"/"+file])
initial_files = update
time.sleep(check_interval)
* দ্রষ্টব্য: আপনার যদি সুডোর সুবিধাগুলির প্রয়োজন হয় তবে কেবল স্ক্রিপ্টটি দিয়ে চালান sudo
vim
বা করা সম্ভব হবেemacs
।