ফাইলগুলিকে প্রভাবিত না করে পুনরাবৃত্তভাবে chmod ডিরেক্টরিগুলি কীভাবে প্রয়োগ করবেন?


18

আমি chmod -Rকোনও ডিরেক্টরিতে আবেদন করার পরে (ফাইল এবং ডিরেক্টরি) এর মধ্যে থাকা সমস্ত কিছুর জন্য অনুমতি পরিবর্তন করা হয়। আমি কীভাবে xফাইলগুলিকে সংশোধন না করে ডিরেক্টরিতে এক্সিকিউট / অনুসন্ধান ( ) অনুমতিগুলি যুক্ত করতে পারি ?

উত্তর:


13

আপনি অনুসন্ধান ব্যবহার করতে পারেন ।

find ./ -type d -execdir chmod 750 {} +

750 হল এমন মোড যেখানে আপনি প্রয়োগ করতে চান এবং "./" সেই ডিরেক্টরিটি যা আপনি পুনরাবৃত্তভাবে অনুসন্ধান করবেন।

সম্পাদনা : @ গিলিজকে ধন্যবাদ এবং সন্ধান করুন (1) , অতিরিক্ত সুরক্ষা এবং পারফরম্যান্সের জন্য আমি এটি সংশোধন করেছি।


@ গিলিস ধন্যবাদ, আমি ইউনিক্স সরঞ্জামগুলি সম্পর্কে নতুন কিছু শিখি এমন ঘন ঘন নয় :-) এটি দুর্দান্ত। এছাড়াও, এখন পড়ছেন খোঁজ ডকুমেন্টেশন, এক সত্যিই -execdir পরিবর্তে ব্যবহার করা উচিত।
ewindisch

7

এই বিশেষ ক্ষেত্রে আপনি Xপরিবর্তে ব্যবহার করতে পারেন xযার পরিবর্তে কেবলমাত্র ডিরেক্টরি বা ফাইলগুলিতে বিট যুক্ত করা হয় যা ইতিমধ্যে কিছু ব্যবহারকারীর (যেমন chmod -R +X my_dir) জন্য নির্বাহযোগ্য বিট সেট রয়েছে ।

সাধারণ (যেমন যদি আপনি ফাইল প্রভাবিত না করেই সব ডিরেক্টরি পাঠযোগ্য করতে চেয়েছিলেন), আপনি পারেন ব্যবহার করতে পারে findসঙ্গে -type dঅথবা আপনি zsh (অথবা সঙ্গে ব্যাশ 4 ব্যবহার করছেন shopt -s globstar) **/(ক্ষণস্থায়ী ছাড়া উভয় উল্লিখিত glob -Rপতাকা chmod)।


@ গিলস: ভাল কথা, আমি এটি উত্তরে যুক্ত করেছি।
sepp2k

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