نحتاج في بعض الأحيان إلى تنفيذ أمر ما ، على سبيل المثال تغيير أذونات المجلد ومحتوياته ، ولكننا لا نريد تطبيق هذا التغيير على ملف معين ، أو على مجلد معين ... حتى عندما يكون داخل المجلد فوقه. الذي ننفذ الأمر.
لفهمها بشكل أفضل ، لدي مجلد (تسجيل) وداخلها 4 ملفات (doc.txt و file.mp4 و list.txt و thesis.doc) ، أريد تغيير إذن هذه الملفات بحيث لا يتمكن سوى المالك من الوصول إليها ، فافعل ذلك باستثناء ملفات lista.txt، أريد أن يتمكن الجميع من رؤيتها ، أي أنهم لا يغيرون أذوناتهم.
وخلاصة القول:
- يمكن فقط للمالك الاطلاع على doc.txt و file.mp4 و thesis.doc
- يمكن للجميع رؤية list.txt ، أي لا أريد أن تختلف أذوناتهم.
لتحقيق ذلك يمكنني تغيير الأذونات لجميع الملفات ثم تغيير الأذونات أيضًا إلى list.txt بحيث تكون بها كما كانت من قبل. سيكون هذا سطرين ... ولكن ، كما هو الحال دائمًا في Linux ، هناك طريقة لتحسين 😉
لنرى كيف:
- لتغيير الأذونات التي يمكن للمالك فقط الوصول إليها ، سنستخدم: التصريح 700
- لتغيير الأذونات على جميع الملفات في هذا المجلد (أتذكر أنه يسمى: الملفات) سوف نستخدم: السجلات /
- لاستبعاد ملف list.txt سوف نستخدم: / !(list.txt)
بمعنى آخر ، سيكون الأمر الأخير:
chmod 700 archivos/!(lista.txt)
الأمر بهذه البساطة ، إليك لقطة شاشة للأذونات قبل الملفات الموجودة في هذا المجلد ، وتنفيذ الأمر ، ثم كيفية عمل الأذونات:
في حال أردنا استثناء أكثر من ملف مثلا lista.txt زائد أطروحة. doc ، يمكننا فصل هذه الملفات باستخدام | … هذا هو:
chmod 700 archivos/!(lista.txt|tesis.doc)
ما هو بسيط؟ 😀
حسنًا ، لا يوجد شيء آخر يمكن إضافته ، إنها بساطة ولكن عند العمل بكميات كبيرة من المعلومات ، يمكن أن توفر اليوم 😉
الحقيقة لم تكن لتخطر ببالي أبدًا ، لاستبعادها رغم أنني واجهت أحيانًا هذه المعضلة ، تحياتي
نصيحة ممتازة ، تحياتي
Kaze ، I'm emilio del ipi cepero bonilla ، كيف حالك؟ شكرا على المقال ، لقد خدمني الكمية
مرحبا كيف حالك يا فتى
جيد جدا !!!!!
شكرا للمشاركة