الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

how can I get the sum of accounts id’s that has the same group

مغلق
بدأه Smart Duetto في 10 ديسمبر 2006 · 2 رد · 2,098 مشاهدة · في نظام تشغيل Unix & Linux
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

Dear All

I asked about the following

Using “awk” utilities how can I get the sum of accounts id’s that has the same group?

Thanks and warm regards,

Zohair

موقع الاعلانات المصرية

www.egylogo.com

100x468.jpg
#2

السلام عليكم ..

في البدايه اخي , سوف افترض انك تمتلك المعلومات الاساسية حول كتابه سكربتات الـ awk , وايضاً بفترض ايضاً ان هذا ليس سؤال خاص بتمرين او واجب ما ..

بالنسبه لسؤالك فانت لم تحدد ماذا كان الـمجوعه Group يتم ادخالها يدوياً , او ان المطلوب هو الحساب لكل المجموعات , وللتسهيل سوف نأخذ الحاله الاولى , والثانية سوف ادعها لك , تنشط بها نفسك ..

فالبدايه , نحن سوف نتعامل مع الملف etc/passwd/ وهذا الملف هو الذي يحتوي على معلومات عن عن الـ Users ID - UIDs و GIDs- Groups ID , وكل سطر فيه يشبه الشكل العام التالي :

username:passwd:UID:GID:full name,room number,work phone,homephone,other:directory:shell

طبعاً الحقل passwd هنا مشفر .

ومن ذلك نستطيع الفهم ان الفكرة الاساسية للسكربت البسيط الذي سوف نقوم بكتابته هو قراءة حقل UID , ومن ثم التأكد ان GID يساوي المجموعه التي نريد حساب مجموع الـ UIDs لها .

الان نقوم بفتح اي برنامج تحرير , ونكتب التالي . انا هنا سوف استخدم الـ cat , وسيكون كالتالي :

$ cat myscript.awk
getline m_gid
BEGIN { print "Begin Script" }
if ($4= =m_gid)
  sum_uid + = $3
END { printf "Sum of UID = %d", sum_uid }

طبعاً هنا $3 , $4 ترمز للعمود الثالث والرابع على التوالي اللذان يرمزان للـ UID و GID

بعد ذلك يمكننا تنفيذ السكربت من الشل كالتالي :

$ gawk -F : -f myscript.awk

هام: يجب ان تضيف العباره etc/passwd/ بعد الكود السابق , اي بعد مسافه من myscript.awk , لاني عندما اضيفتها في الكود السابق وعملت رد , ظهرت لي رسالة 403 forbidden في المنتدى ؟؟؟!!! ..

لاحظ اننا استخدمنا الاداه gawk وهي نسخة GNU من اداه awk الموجودة في انظمة اليونكس, وهي موجوده في نظام اللينكس بهذا الاسم gawk .

وايضاً لاحظ لاستخدام الخيار: F- , حيث يرمز لما يعرف للفاصل بين الحقول , وفي حالتنا هذه , سيكون هو الرمز :

بالتوفيق ..

تم تعديل هذه المشاركة بواسطة محمد معاشر في 10 ديسمبر 2006 في 19:43

لا إله الإ الله وحده لا شريك له الملك وله الحمد يحي ويميت وهو على كل شئ قدير

------------------------------------------------------------------------------------------------

gazabigBanner.jpg

------------------------------------------------------------------------------------------------

#3

شاكر جدا جدا على الاهتمام وجارى التجربة والرد

موقع الاعلانات المصرية

www.egylogo.com

100x468.jpg

هذا الموضوع مغلق.

مواضيع مشابهة