نتائج البحث

اذهب إلى التنقل اذهب إلى البحث

إعادة التوجيه والحلقات في Bash

إعادة توجيه المُدخلات يمكن تحديد ملف به تعليمات تُستخدم للتحكم في حلقة تكرارية بدلًا من التحكم فيها عن طريق تفقد نتيجة أمر ما أو عن طريق تدخل المستخدم يدويًا، وعادة ما يُستخدم أمر read في هذه الحالة كأمر متحكِّم، ويستمر تنفيذ الحلقة طالما تُغذَّى الحلقة التكرارية بأسطر مدخلات من ذلك الملف، وبمجرد قراءة جميع الأسطر فإن الحلقة تتوقف وتخرج. وبما أن بنية الحلقة التكرارية تُعد بنية لأمر واحد (مثل while TEST-COMMAND; do CONSEQUENT-COMMANDS; done) فإن إعادة التوجيه يجب أن تحدث ...

استخدام الأمر المُضمَّن Shift في Bash

وظيفة أمر shift هو أحد أوامر صدفة بورن التي تأتي مع صدفة Bash أيضًا، ويأخذ هذا الأمر وسيطًا (argument) واحدًا ويكون ذلك الوسيط رقمًا، وتُنقل المعامِلات الموضعية إلى اليسار بمقدار هذا الرقم "N"، أما المعامِلات التي تلي ذلك، من 1+N وما بعده إلى #$ فإن أسماءها تُغيَّر إلى أسماء متغيرات من 1$ إلى #$ +1 - N. فمثلًا لنقل أن لديك أمرًا يأخذ عشرة وسائط، وN تساوي 4، إذًا 4$ تصبح 1$، و 5$ تصبح 2$ وهكذا إلى أن تصل ...

إنشاء قوائم باستخدام الأمر المُضمَّن select في Bash

عام استخدام أمر select البُنية اللغوية لأمر select تشبه بُنية حلقة for: select WORD [in LIST]; do RESPECTIVE-COMMANDS; done ويُستخدم أمر select من أجل إنشاء قوائم بسهولة عبر اتباع ما يلي: تُوسّع القائمة LIST مولِّدة قائمة من العناصر ويطبع التوسع في خطأ قياسي (standard error)، كما يُسبق كل عنصر من القائمة برقم. وإن لم تكن in LIST موجودة فتُطبع المعامِلات الموضعية كما لو تم تحديد @$ in. أيضًا، تُطبع قائمة LIST مرة واحدة فقط. يُطبع محث PS3 عند طباعة كل العناصر، ...

استخدام البُنية case

حالات مُبسطة قد يكون من السهل اللجوء إلى استخدام عبارات if لبداهة أسلوبها، لكن تلك السهولة تنقلب إلى حيرة حين تواجه بضعة اختيارات مختلفة لإجراءات محتملة يجب اتخاذها، ولمثل تلك الحالات نستخدم عبارة case، وبنيتها اللغوية هي كما يلي: case EXPRESSION in CASE1) COMMAND-LIST;; CASE2) COMMAND-LIST;; ... CASEN) COMMAND-LIST;; esac وتطابق كل حالة في التعبير السابق نمطًا (pattern)، وتُنفَّذ الأوامر التي في قائمة COMMAND-LIST لأول تطابق، ويُستخدم محرف الأنبوب | لفصل الأنماط المتعددة، وينهي معامِل ( قائمة الأنماط، ويُطلق اسم البند ...

الاستخدامات المتقدمة لعبارة if الشرطية في Bash

بُنى if/then/else يوضح المثال التالي البُنية التي يجب استخدامها لاتخاذ إجراء أو سلسلة إجراءات إن تحققت شروط عبارة if، وسلسلة إجراءات أخرى إن لم تتحقق: hsoub scripts> gender="male" hsoub scripts> if [[ "$gender" == "f*" ]] More input> then echo "Pleasure to meet you, Madame." More input> else echo "How come the lady hasn't got a drink yet?" More input> fi How come the lady hasn't got a drink yet? hsoub scripts> الفرق بين [] و [[]] على عكس ]، فإن ]] تمنع انقسام الكلمات في ...

التعابير النمطية وأمثلة عن استخدام grep

التعابير النمطية Regular Expressions التعبير النمطي (Regular Expression) هو أسلوب يصف مجموعة من النصوص (strings)، وتُبنى تلك التعابير النمطية بشكل تناظري للتعابير الحسابية (arithmetic expressions) باستخدام عدة معامِلات لدمج التعابير الأصغر. وأصغر وحدة بنائية للتعابير النمطية هي تلك التي تطابق محرفًا واحدًا، ذلك أن أغلب المحارف -بما في ذلك كل الحروف والأرقام- ما هي إلا تعابير نمطية تطابق أنفسها، ويمكن اقتباس أي محرف خاص (metacharacter) له معنىً خاص بسبْقِه بشرطة مائلة خلفية \. المحارف الخاصة للتعابير النمطية يمكن إتْباع التعبير ...

مطابقة الأنماط باستخدام ميزات Bash

مدى المحارف Character Ranges خلافًا لأمر grep والتعابير النمطية (regular expressions) فإن لدينا حالات كثيرة لمطابقة الأنماط التي يمكنك إجراؤها في الصدفة مباشرة دون الحاجة إلى استخدام برنامج خارجي، فلعلك تعلم أن محرفي * و ? يطابقان أي نص أو محرف وحيد -على الترتيب-، ومن أجل مطابقة هذين المحرفيْن تحديدًا، ضع حول كل منهما علامات اقتباس مزدوجة: hsoub ~> touch "*" hsoub ~> ls "*" * يمكنك استخدام الأقواس المربعة لمطابقة أي محرف أو مجموعة محارف بداخل تلك الأقواس إن فُصلت أزواج المحارف ...

الأمران Break و Continue

أمر Break تُستخدم عبارة Break للخروج من الحلقة التكرارية الحالية قبل موعد خروجها الأصلي، ويحدث هذا في الحالات التي لا تعرف فيها عدد المرات التي يجب أن تنفذها الحلقة، كأن تعتمد على إدخال المستخدم مثلًا. يوضح المثال التالي حلقة while يمكن مقاطعتها، وهو مثال مُطوَّر من برنامج wisdom.sh من المثال المشروح في استخدام مُدخلات لوحة المفاتيح للتحكم في حلقة while : #!/bin/bash # هذا البرنامج يطبع أمثالًا ونصائح # يمكنك الخروج الآن بطريقة أفضل. FORTUNE=/usr/games/fortune while true; do echo "On which topic do you want advice?" echo ...

التابع Encoding.inspect‎ في روبي

يُعيد التّابع inspect‎ سلسلة نصية تمثل الترميز المعطى بشكل يخص المبرمجين فقط. البنية العامة inspect → string القيم المعادة تُعاد سلسلةٌ نصّيةٌ تمثّل التّرميز المعطى بشكل يخص المبرمجين فقط. أمثلة مثالٌ عن استخدام التابع inspect‎: Encoding::UTF_8.inspect #=> "#<Encoding:UTF-8>" Encoding::ISO_2022_JP.inspect #=> "#<Encoding:ISO-2022-JP (dummy)>" انظر أيضًا التّابع aliases: يُعيد الأسماء البديلة وجميع أسماء الترميزات الأصلية المتاحة. التابع find: يبحث عن ترميز باسم محدّد. التابع list: يُعيد قائمةً بالترميزات المُحمّلة. التّابع name: يُعيد اسم التّرميز المستخدم. التّابع names: ...

التابع Encoding.name في روبي

يُعيد التّابع name اسم التّرميز الفعلي لترميز محدد. البنية العامة name → string القيم المعادة تُعاد سلسلةٌ نصّيةٌ (string) تمثّل اسم التّرميز الفعلي للترميز المعطى. أمثلة مثالٌ عن استخدام التابع name: Encoding::UTF_8.name      #=> "UTF-8" انظر أيضًا التّابع aliases: يُعيد الأسماء البديلة وجميع أسماء الترميزات الأصلية المتاحة. التابع find: يبحث عن ترميز باسم محدّد. التابع list: يُعيد قائمةً بالترميزات المُحمّلة. التابع name_list: يُعيد التّابع name_list قائمة بأسماء التّرميزات المتاحة. التّابع inspect: يُعيد سلسلة نصية تمثل الترميز المعطى بشكل يخص المبرمجين فقط. ...

التابع Encoding.list‎ في روبي

يُعيد التّابع list قائمةً بالترميزات المُحمّلة (loaded encodings). البنية العامة list → [enc1, enc2, ...] القيم المعادة: تعاد قائمة بالتّرميزات المُحمّلة. أمثلة بعض الأمثلة عن استخدام التابع list‎: Encoding.list #=> [#<Encoding:ASCII-8BIT>, #<Encoding:UTF-8>, #<Encoding:ISO-2022-JP (dummy)>] Encoding.find("US-ASCII") #=> #<Encoding:US-ASCII> Encoding.list #=> [#<Encoding:ASCII-8BIT>, #<Encoding:UTF-8>, #<Encoding:US-ASCII>, #<Encoding:ISO-2022-JP (dummy)>] انظر أيضًا التّابع aliases: يُعيد الأسماء البديلة وجميع أسماء الترميزات الأصلية المتاحة. التابع find: يبحث عن ترميز باسم محدّد. التابع name_list: يُعيد التّابع name_list قائمة بأسماء التّرميزات المتاحة. التّابع inspect: يُعيد ...

التابع Encoding.to_s في روبي

يُعيد التّابع to_s اسم التّرميز الفعلي لترميز محدد. البنية العامة to_s → string القيم المعادة تُعاد سلسلةٌ نصّيةٌ (string) تمثّل اسم التّرميز الفعلي لترميز محدد. أمثلة مثالٌ عن استخدام التابع to_s: Encoding::UTF_8.name      #=> "UTF-8" انظر أيضًا التّابع aliases: يُعيد الأسماء البديلة وجميع أسماء الترميزات الأصلية المتاحة. التابع find: يبحث عن ترميز باسم محدّد. التابع list: يُعيد قائمةً بالترميزات المُحمّلة. التابع name_list: يُعيد التّابع name_list قائمة بأسماء التّرميزات المتاحة. التّابع inspect: يُعيد سلسلة نصية تمثل الترميز المعطى بشكل يخص المبرمجين فقط. ...

التابع Encoding.names في روبي

يُعيد التّابع names اسم ترميزٍ محدد وجميع الأسماء البديلة الخاصّة به. البنية العامة names → array القيم المعادة تُعاد قائمة (list) تحوي اسم الترميز المعطى والأسماء البديلة الخاصّة به. أمثلة مثالٌ عن استخدام التابع names: Encoding::WINDOWS_31J.names  #=> ["Windows-31J", "CP932", "csWindows31J"] انظر أيضًا التّابع aliases: يُعيد الأسماء البديلة وجميع أسماء الترميزات الأصلية المتاحة. التابع find: يبحث عن ترميز باسم محدّد. التابع list: يُعيد قائمةً بالترميزات المُحمّلة. التابع name_list: يُعيد التّابع name_list قائمة بأسماء التّرميزات المتاحة. التّابع inspect: يُعيد سلسلة نصية تمثل ...

التابع Encoding.name_list في روبي

يعيد التّابع name_list قائمة بأسماء التّرميزات المتاحة. البنية العامة name_list → ["enc1", "enc2", ...] القيم المعادة تُعاد قائمة بأسماء التّرميزات المتاحة. أمثلة مثالٌ عن استخدام التابع name_list: Encoding.name_list #=> ["US-ASCII", "ASCII-8BIT", "UTF-8", "ISO-8859-1", "Shift_JIS", "EUC-JP", "Windows-31J", "BINARY", "CP932", "eucJP"] انظر أيضًا التّابع aliases: يُعيد الأسماء البديلة وجميع أسماء الترميزات الأصلية المتاحة. التابع find: يبحث عن ترميز باسم محدّد. التابع list: يُعيد قائمةً بالترميزات المُحمّلة. التّابع inspect: ...

 التابع ENV.to_a في روبي

يحول التابع to_a متغيرات البيئة إلى مصفوفة مكونة من مصفوفات فرعية تضم أسماء وقيم تلك المتغيرات. البنية العامة to_a → Array القيمة المعادة تُعاد مصفوفة مكونة من مصفوفات فرعية تضم أسماء وقيم متغيرات البيئة. أمثلة مثال عن استخدام التابع to_a: ENV.to_a # => [["TERM", "xterm-color"], ["SHELL", "/bin/bash"], ...] انظر أيضًا التابع to_h: ينشئ جدولًا من النوع Hash يحوي نسخةً من متغيرات البيئة.  التابع to_s: يعيد السلسلة النصية “ENV”. مصادر قسم التابع to_a في الصنف ENV في توثيق روبي الرسمي.

الكائنات والمراجع في PHP

غالبًا ما ترد العبارة التالية كثيرًا عند الحديث عن البرمجة كائنية التوجّه في PHP 5: "تمرّر الكائنات بالمرجعية بصورة افتراضية". هذه العبارة ليست صحيحة تمامًا، وسيصحّح هذا القسم هذه الفكرة العامة بالاستعانة ببعض الأمثلة. المرجع في PHP هو اختصار يتيح لمتغيرين مختلفين الكتابة إلى القيمة ذاتها. ومنذ الإصدار الخامس من اللغة، لم يعد متغير الكائن يتضمّن الكائن نفسه كقيمة على الإطلاق، بل يتضمّن فقط معرّفًا للكائن يتيح الوصول إلى الكائن الحقيقي. وعند تمرير الكائن كمعامل أو إعادته أو إسناده إلى ...

الكائنات والمراجع في PHP

غالبًا ما ترد العبارة التالية كثيرًا عند الحديث عن البرمجة كائنية التوجّه في PHP 5: "تمرّر الكائنات بالمرجعية بصورة افتراضية". هذه العبارة ليست صحيحة تمامًا، وسيصحّح هذا القسم هذه الفكرة العامة بالاستعانة ببعض الأمثلة. المرجع في PHP هو اختصار يتيح لمتغيرين مختلفين الكتابة إلى القيمة ذاتها. ومنذ الإصدار الخامس من اللغة، لم يعد متغير الكائن يتضمّن الكائن نفسه كقيمة على الإطلاق، بل يتضمّن فقط معرّفًا للكائن يتيح الوصول إلى الكائن الحقيقي. وعند تمرير الكائن كمعامل أو إعادته أو إسناده إلى ...

التابع Encoding.local_charmap‎ في روبي

يعيد التّابع locale_chaemap اسم مخطّط توزيع الأحرف (charmap) للمحلية (locale) الحالية. البنية العامة locale_charmap → string القيم المعادة تعاد سلسلة نصية تمثل اسم مخطّط توزيع الأحرف (charmap) للمحلية الحالية، أو تعاد القيمة nil العدمية  إذا لم توجد معلومات موافقة. أمثلة بعض الأمثلة عن استخدام التابع locale_charmap‎‎: Debian GNU/Linux LANG=C Encoding.locale_charmap #=> "ANSI_X3.4-1968" LANG=ja_JP.EUC-JP Encoding.locale_charmap #=> "EUC-JP" SunOS 5 LANG=C Encoding.locale_charmap #=> "646" LANG=ja ...

التابع Encoding.find في روبي

يبحث التّابع find عن ترميزٍ باسمٍ محدّد. الأسماء التي يقبلها هذا التّابع هي الاسم الأساسي والاسم البديل الخاص بالتّرميز بما في ذلك الأسماء البديلة التالية: "external": يمثل الترميز الخارجي الافتراضي (default external encoding). "internal": يمثل الترميز الداخلي الافتراضي (default external encoding). "locale": يمثل الترميز المحدد في المحلية (locale encoding). "filesystem": يمثل ترميز نظام الملفات (filesystem encoding). البنية العامة find(string) → enc المعاملات string سلسلة نصية تمثل اسم الترميز المراد البحث عنه. القيم المعادة يعاد الترميز ذو الاسم string في حال ...

الدالة chown()‎ في PHP

(PHP 4, PHP 5, PHP 7) تغيِّر الدالة chown()‎ مالك الملف. الوصف bool chown ( string $filename , mixed $user ) تحاول هذه الدالة تغيير مالك الملف filename إلى المالك الجديد user. المستخدم ذو امتيازات مدير النظام الذي يملك كافَّة صلاحيات الوصول (superuser) قادرٌ وحده على تغيير مالك الملف. المعاملات filename مسار الملف الذي ستُجرى عليه العمليَّة. user اسم المالك الجديد أو رقم مُعرِّفه. القيم المعادة تُعاد القيمة TRUE عند نجاح العملية، والقيمة FALSE خلاف ذلك. أمثلة المثال 1: استعمال الدالة ...

عرض (20 السابقة | 20 التالية) (20 | 50 | 100 | 250 | 500).