نتائج البحث

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

إنشاء وتشغيل برنامج Bash

الكتابة والتسمية إن كان لديك سلسلة أوامر تنفذها بشكل متكرر وتريد اختصار وقت تنفيذها أو تنفيذها بشكل آلي، فيمكنك وضعها في ملف فارغ يكتب بصيغة معينة وتقرؤه الصدفة على أنه برنامج تنفذه عند استدعاءه بكتابة اسم الملف الذي يحويه، وتسمى تلك البرامج ببرامج الصدفة أو شيفرات الصدفة النصية (Shell Scripts). ويمكن استخدام تلك البرامج لأتمتة المهام باستخدام أداة cron أو في إجراءات الإقلاع وإيقاف التشغيل في أنظمة يونكس، حيث يُحدَّد أسلوب عمل العفاريت (daemons) والخدمات في شيفرات init النصية (init ...

تنقيح برامج Bash

التنقيح على مستوى البرنامج ككل حين تحدث مشكلة في البرنامج الذي كتبته فإنك في حاجة إلى وضع يدك على مكان المشكلة بالتحديد داخل الشيفرة، وتوفر Bash مزايا تنقيح شاملة لعل أشهرها هو بدء صدفة فرعية بخيار x- الذي سيبدأ الصدفة بالكامل في طور التنقيح، وستُطبَع آثار كل أمر إضافة إلى وسائطه (arguments) إلى خَرج قياسي (standard output) بعد توسيع الأوامر لكن قبل تنفيذها. الشيفرة التالية هي لبرنامج commented-script1.sh من مثال أساسيات كتابة برامج Bash، وقد استدعينا الصدفة في طور التنقيح ...

صدفة Bash وبرامج Bash

تعريف بصدفة Bash Bash هي صدفة نظام جنو التي تتوافق مع صدفة بورن وتزيد عليها بعدة مزايا وخصائص مفيدة من باقي الصدفات، وحين تبدأ الصدفة فإنها تقرأ ملفات إعداداتها التي من أهمها ما يلي: etc/profile/ bash_profile./~ bashrc./~ كذلك تتصرف bash بشكل مختلف حين تكون في وضع تفاعلي، وهي متوافقة مع معايير POSIX وبها وضع محظور. ويمكن تقسيم أوامرها إلى ثلاث مجموعات: دوال الصدفة والأوامر المُضمَّنة والأوامر الموجودة داخل مجلد في نظامك. أيضًا، تدعم bash أوامر مضمَّنة أخرى ليست موجودة داخل ...

الدوال في Bash

توفر الدوال طريقة سهلة لتجميع أوامر تحتاج إلى تنفيذها بشكل متكرر، وحين تعمل الدالة فإن المعامِلات الموضعية (positional parameter) تتغير إلى معامِلات الدالة، ثم يعاد ضبط تلك المعاملات بعد توقف الدالة إلى معاملات البرنامج المُستدعِي. وكذلك فإن الدوال تشبه برامج مصغرة (mini-scripts)، ومن ثَمَّ فإنها تولِّد رموز حالة خروج (exit codes) أو رموز حالة إعادة (return codes). مقدمة إلى الدوال في Bash نظرة عامة على الدوال في Bash والبُنى اللغوية لها ومعامِلاتها الموضعية وعرضها في الصدفة. أمثلة عن الدوال في ...

مقدمة إلى if في Bash

قد تحتاج إلى تحديد سلاسل إجراءات مختلفة داخل برامج الصدفة (shell scripts) بناءً على نجاح تنفيذ أمر أو فشله، وتأتي أداة if الشرطية من أجل مثل تلك الحالات، وأصغر بنية لغوية لأمر if هي التالية: if TEST-COMMANDS; then CONSEQUENT-COMMANDS; fi تُنفَّذ قائمة أوامر الاختبار TEST-COMMANDS، ثم تُنفَّذ قائمة الأوامر التابعة CONSEQUENT-COMMANDS إن كانت حالة الإعادة لها هي صفر. وتكون حالة الإعادة هي حالة خروج آخر أمر تم تنفيذه، أو تكون صفرًا إن لم تتحقق أي حالة من أوامر الاختبار. يتضمن أمر ...

المهام التكرارية في Bash

ستتعلم في هذا القسم كيف يمكن للأوامر المتكررة أن تندمج في حلقات تكرارية، وكيف تُبنى الحلقات التكرارية باستخدام عبارات for أو while أو until إحداها أو جميعها معًا، فحلقة for تنفذ مهمة ما عددًا محددًا من المرات، وإن كنت لا تعرف كم عدد مرات تنفيذ الأمر فاستخدم عبارة until أو while لتحديد متى يجب أن تتوقف الحلقة. ويمكن مقاطعة الحلقات أو إعادة تكرارها باستخدام عبارتي break و continue، كما يمكن استخدام ملف كمُدخَل لحلقة عبر معامل إعادة توجيه المدخلات، كذلك ...

مقدمة إلى الدوال في Bash

ما هي الدوال؟ دوال الصدفة طريقة لتجميع أوامر من أجل تنفيذها لاحقًا باستخدام اسم واحد للمجموعة ككل أو روتين، ويجب أن يكون اسم الروتين فريدًا لا يتكرر في الصدفة أو الشيفرة النصية، وتُنفَّذ كل الأوامر التي تكوِّن الدالة مثل الأوامر العادية تمامًا. تُنفَّذ قائمة الأوامر المرتبطة باسم دالة حين تُستدعى تلك الدالة كأمر بسيط، وتُنفَّذ الدالة داخل الصدفة التي صُرِّح عنها فيها، فلا تُفتح عملية جديدة لتفسير الأوامر. وستظهر الأوامر الخاصة المُضمَّنة قبل دوال الصدفة أثناء البحث عن الأوامر، والأوامر ...

HTML/Topics/Scripting

لإنشاء محتوى تفاعلي في تطبيقات الويب، فتدعم HTML استخدام لغات السكربتات، وخصوصًا JavaScript، وهنالك عدِّة عناصر متوافرة لدعم هذه الإمكانية. العنصر الوصف <canvas> استخدم العنصر <canvas> مع الواجهة البرمجية الخاصة به لترسم الرسومات وتحركها. <noscript> يُعرِّف العنصر <noscript> قسمًا من شيفرات HTML التي ستُضاف إلى الصفحة إذا لم يكن العنصر <script> مدعومًا في المتصفح أو كان استخدام شيفرات JavaScript معطلًا من قِبل المستخدم. <script> تضمين أو الإشارة إلى سكربت قابل للتنفيذ.

حلقة for في Bash

كيفية عمل حلقة for التكرارية حلقة for هي أول وحدة تكرارية في الصدفة من بين ثلاث وحدات، وتسمح تلك الحلقة بتخصيص قائمة من القِيَم، وتُنفَّذ قائمة من الأوامر لكل قيمة من تلك القيم. والبنية اللغوية لهذه الحلقة التكرارية هي كالآتي: for NAME [in LIST ]; do COMMANDS; done إن لم تكن [ in LIST] موجودة فيتم استبدال @$ in بها، وتنفذ for الأوامر (COMMANDS) مرة واحدة لكل معامل موضعي مضبوط على قيمة، انظر المتغيرات في Bash وفحص وسائط سطر الأوامر. وتكون ...

المتغيرات في Bash

أنواع المتغيرات تُكتب متغيرات الصدفة بحروف إنجليزية كبيرة، وتحتفظ Bash بقائمة من نوعين من المتغيرات: المتغيرات العامة Global Variables ستجد المتغيرات العامة أو متغيرات البيئة (environment variables) في جميع الصدفات، ويمكن استخدام أوامر env أو printenv لعرض متغيرات البيئة، وتأتي تلك البرامج في حزمة sh-utils. إليك مثالًا لخرج أمر printenv: wiki ~> printenv CC=gcc CDPATH=.:~:/usr/local:/usr:/ CFLAGS=-O2 -fomit-frame-pointer COLORTERM=gnome-terminal CXXFLAGS=-O2 -fomit-frame-pointer DISPLAY=:0 DOMAIN=hq.garrels.be e= TOR=vi FCEDIT=vi FIGNORE=.o:~ G_BROKEN_FILENAMES=1 GDK_USE_XFT=1 GDMSESSION=Default GNOME_DESKTOP_SESSION_ID=Default GTK_RC_FILES=/etc/gtk/gtkrc:/nethome/wiki/.gtkrc-1.2-gnome2 GWMCOLOR=darkgreen GWMTERM=xterm HISTFILESIZE=5000 history_control=ignoredups HISTSIZE=2000 HOME=/nethome/wiki HOSTNAME=hsoub.hq.garrels.be INPUTRC=/etc/inputrc IRCNAME=wiki JAVA_HOME=/usr/java/j2sdk1.4.0 LANG=en_US LDFLAGS=-s LD_LIBRARY_PATH=/usr/lib/mozilla:/usr/lib/mozilla/plugins LESSCHARSET=latin1 LESS=-edfMQ LESSOPEN=|/usr/bin/lesspipe.sh %s LEX=flex LOCAL_MACHINE=hsoub LOGNAME=wiki LS_COLORS=no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=01;32:*.cmd=01;32:*.exe=01;32:*.com=01;32:*.btm=01;32:*.bat=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tz=01;31:*.rpm=01;31:*.cpio=01;31:*.jpg=01;35:*.gif=01;35:*.bmp=01;35:*.xbm=01;35:*.xpm=01;35:*.png=01;35:*.tif=01;35: MACHINES=hsoub MAILCHECK=60 MAIL=/var/mail/wiki MANPATH=/usr/man:/usr/share/man/:/usr/local/man:/usr/X11R6/man MEAN_MACHINES=hsoub MOZ_DIST_BIN=/usr/lib/mozilla MOZILLA_FIVE_HOME=/usr/lib/mozilla MOZ_PROGRAM=/usr/lib/mozilla/mozilla-bin MTOOLS_FAT_COMPATIBILITY=1 MYMALLOC=0 NNTPPORT=119 NNTPSERVER=news NPX_PLUGIN_PATH=/plugin/ns4plugin/:/usr/lib/netscape/plugins OLDPWD=/nethome/wiki OS=Linux PAGER=less PATH=/nethome/wiki/bin.Linux:/nethome/wiki/bin:/usr/local/bin:/usr/local/sbin:/usr/X11R6/bin:/usr/bin:/usr/sbin:/bin:/sbin:. PS1=\[\033[1;44m\]wiki is in \w\[\033[0m\] PS2=More input> PWD=/nethome/wiki SESSION_MANAGER=local/hsoub.hq.garrels.be:/tmp/.ICE-unix/22106 SHELL=/bin/bash SHELL_LOGIN=--login SHLVL=2 SSH_AGENT_PID=22161 SSH_ASKPASS=/usr/libexec/openssh/gnome-ssh-askpass SSH_AUTH_SOCK=/tmp/ssh-XXmhQ4fC/agent.22106 START_WM=twm TERM=xterm TYPE=type USERNAME=wiki USER=wiki _=/usr/bin/printenv VISUAL=vi WINDOWID=20971661 XAPPLRESDIR=/nethome/wiki/app-defaults XAUTHORITY=/nethome/wiki/.Xauthority XENVIRONMENT=/nethome/wiki/.Xdefaults XFILESEARCHPATH=/usr/X11R6/lib/X11/%L/%T/%N%C%S:/usr/X11R6/lib/X11/%l/%T/%N%C%S:/usr/X11R6/lib/X11/%T/%N%C%S:/usr/X11R6/lib/X11/%L/%T/%N%S:/usr/X11R6/lib/X11/%l/%T/%N%S:/usr/X11R6/lib/X11/%T/%N%S XKEYSYMDB=/usr/X11R6/lib/X11/XKeysymDB XMODIFIERS=@im=none XTERMID= XWINHOME=/usr/X11R6 X=X11R6 YACC=bison -y المتغيرات المحلية Local Variables لن تجد المتغيرات المحلية إلا في الصدفة الحالية، ويمكن استخدام أمر set -بدون خيارات- لعرض ...

Bash/Topics

صدفة Bash وبرامج Bash البرامج الشائعة للصَّدَفة وظائف الصدفة وما تفعله إضافة إلى أنواعها المختلفة (sh، bash، csh، ... ) مزايا صدفة Bash استعراض لأهم مزايا صدفة Bash، مثل الصور المختلفة لاستدعاءات الصدفة، والتعابير الحسابية والشرطية والصدفة المحظورة، وكذلك الأوامر البديلة والمصفوفات، ... . تنفيذ الأوامر في Bash توضيح لما يحدث عند تنفيذ الأوامر في صدفة Bash، واستعراض لأهم الأوامر المُضمَّنة فيها. وحدات البناء الأساسية شرح للوحدات الأساسية التي تشكل صدفة Bash، مثل الأوامر والدوال والمعامِلات والتوسعات والبنية اللغوية، إضافة ...

كتابة وتنقيح برامج Bash

برنامج الصدفة هو سلسلة من الأوامر يعاد استخدامها بشكل متكرر، ووُضعت في ملف نصي له إذن تنفيذ كبرنامج، ويمكن استخدام أي محرر نصي لكتابة برامج لصدفة Bash. تبدأ برامج bash بـ !# متبوعيْن بمسار الصفة التي ستنفذ الأوامر التي ستُكتب في البرنامج، وتضاف التعليقات إلى البرنامج للمرجعية فيما بعد ولتيسير فهم الشيفرة على من يقرؤها. يُفضل الإسهاب في التعليقات داخل برامج الصدفة على الإيجاز فيها. تُنقَّح الصدفة باستخدام خيارات الصدفة، ويمكن استخدام تلك الخيارات للتنقيح الجزئي أو لتحليل الشيفرة كاملة، ...

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

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

الصنف ‎:read-write

الصنف الزائف ‎:read-write في CSS (أي pseudo-class) يُمثِّل أي عنصر فيه محتوى نصي يمكن للمستخدم تعديله. /* يجب توفير سابقة لمتصفح فايرفكس */ input:-moz-read-write { background-color: #bbf; } input:read-write { background-color: #bbf; } لاحظ أنَّ هذا المُحدِّد لا يُحدِّد عناصر <input> فقط، وإنما يُحدِّد أي عنصر يمكن للمستخدم تعديله، مثل عناصر <p> التي ضُبِطَت الخاصية contenteditable عليها. الشكل العام لهذا المحدد: :read-write أمثلة مثال عن استخدام هذا الصنف لتحديد جميع العناصر التي يمكن تعديلها: <input type="text" value="Type whatever you want here."> <input type="text" value="This ...

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

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

البرامج الشائعة للصَّدَفة

الوظائف العامة للصدفة يفسر برنامج صَدَفة يونكس أوامر المستخدم التي يدخلها بنفسه أو التي يمكن استخراجها وقراءتها من ملف نصي يسمى شيفرة الصَّدَفة النصية (shell script) أو برنامج الصدفة (shell program). وتكون تلك الملفات النصية مفسّرة (interpreted) على خلاف الملفات المُجمّعة (compiled)، بمعنى أن الصدفة تقرأ الأوامرَ سطرًا سطرًا وتبحث عنها في النظام، على خلاف البرامج المُجمَّعة التي يحوِّل المُجمِّع (compiler) شيفرتها إلى ملف تنفيذي (executable file) مكتوب بلغة يستطيع الحاسوب فهمها -لغة الآلة-، ثم يُمكن استخدام ذلك الملف بعدها ...

المزيد من خيارات Bash

ناقشنا بعض خيارات صدفة Bash التي قد تفيدك في تنقيح برامج Bash، وسننظر الآن في مزيد من تلك الخيارات بتفصيل أكثر. عرض الخيارات استخدم خيار o- لأمر set لعرض كل خيارات الصدفة: hsoub:~> set -o allexport off braceexpand on emacs ...

الأفخاخ في Bash

عام قد تجد حالات لا تريد فيها من يستخدم شيفراتك النصية أن يخرج قبل الوقت المحدد عن طريق اختصارات لوحة المفاتيح حين تحتاج إلى مدخلات مثلًا أو عند القيام بعملية تنظيف، ويمكن استخدام أمر trap ليلتقط إشارات لوحة المفاتيح تلك، ويمكن برمجته مسبقًا لينفِّذ قائمة أوامر عند التقاط تلك الإشارات. قواعد أمر trap واضحة ومباشرة: trap [الإشارات] [الأوامر] هذا يجعل أمر trap يلتقط الإشارات المُعطاة له، والتي قد تكون أسماء إشارات مع سابقة SIG أو بدونها، أو تكون أرقام إشارات. وإن ...

عرض رسائل المستخدم في Bash

برامج تفاعلية أم غير تفاعلية؟ تعمل بعض برامج الصدفة (shell scripts) دون أي تدخل من المستخدم ويطلق عليها برامج غير تفاعلية، ومن بعض مزايا تلك البرامج أنها تعمل بشكل متوقع في كل مرة، ويمكنها العمل في الخلفية أيضًا. لكن باقي برامج الصدفة تحتاج إدخالًا من المستخدم أو تحتاج أن تطبع رسائل للمستخدم أثناء عملها، ولذلك النوع من البرامج مزايا كذلك، إذ يمكن بناء برامج أكثر مرونة، ويمكن للمستخدم تخصيص البرنامج أثناء تشغيله أو جعله يتصرف بأشكال مختلفة، كما يمكن للبرنامج ...

وحدات البناء الأساسية في Bash

وحدات بناء الصدفة البنية اللغوية للصدفة (Shell Syntax) إن كان المُدخَل ليس تعليقًا (comment) فإن الصدفة تقرؤه وتقسمه إلى كلمات ومعامِلات مطبِّقة قواعد الاقتباس (quoting rules) لتحدد معنى كل مِحرَف (character)، ثم تُترجَم تلك الكلمات والمعامِلات إلى أوامر وعناصر أخرى ينتج عنها حالة الخروج المناسبة للعملية. ولا تُطبَّق آلية fork-exec التي ذكرناها في تنفيذ الأوامر في Bash إلا بعد أن تحلل الصدفة المُدخلات وفقًا للخطوات الآتية: تقرأ الصدفة المُدخلات من ملف، سواء من نص (string) أو من طرفية المستخدم. يُقسَّم ...

أمثلة عن الدوال في Bash

إعادة التدوير ستجد برامج كثيرة على نظامك تستخدم الدوال كطريقة منظمة لمعالجة سلسلة ما من الأوامر، ففي بعض أنظمة لينكس مثلًا ستجد الملف التعريفي etc/rc.d/init/functions/ يشار إليه كمصدر في كل شيفرات init النصية. وبهذا الأسلوب لا تحتاج إلى كتابة المهام المتكررة سوى مرة واحدة وبشكل عام أيضًا، مهام مثل تفقد ما إن كانت تعمل إحدى المهام، تشغيل أو إيقاف أحد العفاريت (daemons)، وهلم جرا. ثم إذا دعت الحاجة إلى كتابة تلك المهام مرة أخرى فإنك لا تحتاج سوى إعادة تدوير ...

أساسيات كتابة برامج Bash

في أي صدفة سيعمل البرنامج؟ يجب أن تحدد الصدفة التي ستنفِّذ البرنامج إذا أردت تنفيذه في صدفة فرعية، فقد لا تكون الصدفة التي كتبت فيها البرنامج هي الصدفة الافتراضية لنظامك، وعليه قد تُنتِج أوامر برنامجك أخطاءً عند تنفيذها في الصدفة الخطأ. يحدد أول سطر في البرنامج نوع الصدفة، ويجب أن يكون أول محرفين في ذلك السطر !#، ثم يتلو ذلك مسار الصدفة التي ستنفِّذ البرنامج. كذلك لا تبدأ برنامجك بسطر فارغ إذ تُقرأ الأسطر الفارغة على أنها أسطر أيضًا، وستبدأ ...

الحصول على مُدخلات المستخدم في Bash

استخدام أمر read أمر read هو الأمر المتمم لأمريْ echo و printf، وبنيته اللغوية كالتالي: read [options] NAME1 NAME2 ... NAMEN يُقرأ سطر واحد من المُدخل القياسي (standard input) أو من واصف ملف (file descriptor) أُدخِل كوسيط لخيار u-، وتُعيَّن أول كلمة من السطر لأول اسم NAME1، والثانية للاسم الثاني NAME2 وهكذا، ثم تُعيَّن الكلمات المتبقية وفاصلاتها المتداخلة (intervening seperators) إلى الاسم الأخير NAMEN، أما إن كانت الكلمات المقروءة من مجرى الدخل أقل من الأسماء فتعيَّن قيم فارغة لتلك الأسماء. تُستخدم ...

تنفيذ الأوامر في Bash

عام تحدد bash نوع البرنامج الذي يتم تنفيذه، وتكون البرامج هنا عادة أوامر للنظام في صورة مُجمّعة (compiled) على جهازك. وحين يتم تنفيذ أحد تلك البرامج، فإن bash تنشئ نسخة من نفسها، وتولد عملية جديدة بناء على ذلك، ويدعى ذلك الإجراء بالاشتقاق (forking). وتلك العملية الفرعية لديها نفس بيئة العملية الأصلية، ولا تختلفان إلا في رقم معرّف العملية (Process ID Number) لكل منهما. وتحِل بيانات العملية الجديدة محِل مساحة العنوان (address space) بعد الاشتقاق ، ويتم ذلك الإجراء من خلال ...

تطوير برامج Bash جيدة

خصائص الشيفرات الجيدة هذا الشرح عن آخر وحدة بناء للصدفة وهي الشيفرات النصية. إليك بعض الأمور التي يجب أن تراعيها قبل أن نكمل: يجب أن تعمل الشيفرة بدون أخطاء. يجب أن تنفذ المهمة التي كُتبت لها. يجب أن يكون منطق البرنامج محددًا وظاهرًا. لا تنفذ الشيفرة مهامًا غير ضرورية. ينبغي أن تكون الشيفرة قابلة لإعادة استخدامها. الهيكل Structure يجب أن يكون هيكل شيفرة الصدفة مرنًا للغاية، فرغم أن bash بها حرية ظاهرة، إلا أنه يجب تحقيق منطق صحيح وتحكم في ...

الاستخدامات المتقدمة لعبارة 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> الفرق بين [] و [[]] على عكس ]، فإن ]] تمنع انقسام الكلمات في ...

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

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

ميزات صدفة Bash

صدفة bash هي الصدفة الافتراضية لنظام جنو يوفّر مشروع GNU -إذ يشير الاسم إلى GNU's Not UNIX- أدواتٍ لإدارة النظم الشبيهة بنظام يونكس، وهي نظم التشغيل الحرة والمتوافقة مع معايير يونكس. وإحدى تلك الأدوات هي bash، صَدَفة متوافقة مع صدفة sh الأولى التي كتبها ستيفن بورن، وبها خصائص مفيدة من صدفتي Korn و C -اختصاراتهما ksh و csh على الترتيب-. وقد صُممت لتتوافق مع معيار IEEE POSIX P1003.2/ISO 9 945.2 للصدفات والبرامج.  كما أن بها مزايا محسّنة عن sh سواء ...

Python/pathlib/Path/write bytes

التابع Path.write_bytes يفتح الملف المُشار إليه في نمط bytes، ويكتب البيانات فيه ثم يُغلقه. >>> p = Path('my_binary_file') >>> p.write_bytes(b'Binary file contents') 20 >>> p.read_bytes() b'Binary file contents' إن كان المسار يشير إلى ملف موجود مسبقًا، فإن الكتابة عليه تؤدي إلى حذف المحتوى السابق. تابع مُستحدث في السخة 3.5.

Python/pathlib/Path/write text

التابع Path.write_text يفتح الملف المٌشار إليه بالنمط النصي، ويكتب البيانات فيه ثم يُغلقه. >>> p = Path('my_text_file') >>> p.write_text('Text file contents') 18 >>> p.read_text() 'Text file contents' <span> </span> <span> </span> تابع مُستحدث في السخة 3.5.

الإشارات في Bash

صفحة man للإشارات يحتوي نظامك على صفحة man بها كل الإشارات المتاحة، لكن قد يُفتح بطريقة مختلفة اعتمادًا على نظام تشغيلك، والطريقة التي ستجدها في أغلب أنظمة لينكس هي man 7 signal، لكن إن كنت في ريب من الأمر فحدد صفحة man والقسم الذي تريده بالضبط باستخدام أوامر مثل: man -k signal | grep list أو apropos signal | grep list ستجد أسماء الإشارات باستخدام kill -l. الإشارات إلى صدفة Bash الخاصة بك تتجاهل صدفة bash التفاعلية إشارتي SIGTERM و SIGQUIT في ...

بيئة Bash

يمكن إعداد بيئة Bash على مستوى النظام ككل أو لكل مستخدم على حدة، وتُستخدم ملفات الإعدادات المختلفة من أجل ضبط سلوك الصدفة، إذ تحتوي تلك الملفات على خيارات الصدفة وإعدادات المتغيرات وتعريفات الدوال ووحدات أخرى من وحدات بناء صدفة Bash التي تيسر علينا إنشاء بيئة عمل مريحة ومنجِزة. يمكن اختيار أسماء للمتغيرات كما تشاء -نوعًا ما- باستثناء الأسماء المحجوزة لصدفة بورن وصدفة Bash والمعامِلات الخاصة (special parameters). وتستخدم Bash نظام اقتباس (quoting) لاستبعاد المعاني الخاصة من محرف أو أكثر في ...

التوسعات في Bash

بعد تقسيم الأمر في Bash إلى وحدات (Tokens) -انظر وحدات البناء الأساسية في Bash، البنية اللغوية للصدفة- فإن تلك الوحدات توسَّع (expanded) أو تُستبيَن (resolved)، وسنفصّل الآن تلك التوسعات وفقًا لترتيب كل منها، ثم بعد إتمام جميع التوسعات تُنفّذ عملية حذف الاقتباسات. توسُّع القوس المعقوف {} توسع القوس المعقوف هو آلية يمكن من خلالها إنشاء نصوص عشوائية (arbitrary strings)، إذ تأخذ الأنماط (patterns) التي سيُنفَّذ عليها توسع القوس المعقوف باستهلال اختياري (optional preamble) متبوع بسلسلة من النصوص تفصل بين كل ...

المصفوفات في Bash

إنشاء المصفوفات المصفوفة هي متغير يحتوي قيمًا متعددة، وأي متغير قد يُستخدم كمصفوفة، كذلك لا يوجد حد أقصى لحجم المصفوفة ولا يُشترط أن تُفهرس المتغيرات داخل المصفوفة أو تُعيَّن في وقت واحد، وقد تكون المصفوفات صفرية القاعدة أي يُفهرس أول عنصر برقم صفر. ينفَّذ التصريح غير المباشر عن المتغير (indirect declaration) باستخدام البنية اللغوية التالية: ARRAY[INDEXNR]=value يعامَل المفهرِس INDEXER على أنه تعبير حسابي يجب أن يٌقدَّر بعدد موجب، ويتم التصريح الواضح (explicit declaration) للمصفوفة باستخدام أمر declare: declare -a ARRAYNAME يُقبَل التصريح ...

كتابة برامج Bash تفاعلية

سنتعلم في هذا القسم كيف نُدخل تعليقات المستخدم وكيف نطلب من المستخدم إدخال بيانات، وذلك عادة باستخدام بُنية echo/read، كما سنناقش كيف يمكن استخدام الملفات كمُدخلات ومخرجات باستخدام واصفات الملفات وإعادة التوجيه، وكيف يمكن جمع ذلك مع الحصول على مُدخلات من المستخدم. ويركز هذا الباب أيضًا على أهمية توفير رسائل مفصلة لمن يستخدم برامج الصدفة التي نكتبها، فمن الأفضل أن تعطي معلومات أكثر من اللازم بدلًا من كتابة توثيق موجز. مستندات Here هي إحدى أنواع بُنى الصدفة التي تسمح بإنشاء ...

ملفات تهيئة الصدفة

ملفات الإعدادات على مستوى النظام System-wide Configuration files الملف etc/profile/ تقرأ Bash التعليمات الموجودة في etc/profile/ إن استدعيْت بشكل تفاعلي عبر خيار login-- أو إن استدعيْت كـ sh ، تضبط تلك التعليمات عادة المتغيرات PATH - USER - MAIL - HOSTNAME - HISTSIZE ، وهي متغيرات تابعة للصدفة. كذلك تُضبط قيمة umask في etc/profile/ على بعض الأنظمة، أما في بعضها الآخر فإن هذا الملف يحتوي على موجّهات (pointers) لملفات الإعدادات الأخرى مثل: ملف etc/inputrc/ ، وهو ملف تهيئة على مستوى ...

حلقة until في Bash

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

أنواع المتغيرات في Bash

التعيين العام للقيَم لم نركز كثيرًا في الشرح السابق لصدفة Bash على أنواع المتغيرات التي كنا نعيِّنها لأن Bash تستطيع التعامل مع أنواع متعددة من المتغيرات والمعامِلات، ونتيجة لذلك فإن متغيراتنا يمكنها احتواء أي نوع نختاره من البيانات، انظر المثال التالي للتوضيح: [hsoub in ~] VARIABLE=12 [hsoub in ~] echo $VARIABLE 12 [hsoub in ~] VARIABLE=string [hsoub in ~] echo $VARIABLE string وستكون حالات تريد فيها تجنب هذا السلوك من المثال السابق حين تتعامل مع أرقام الهواتف وغيرها مثلًا، وقد تحتاج أن تحدد متغيرًا ثابتًا (Constant ...

البُنى الشرطية في Bash

سنتعلم في هذا الباب كيف نبني سلاسل شرطية في برامجنا بحيث نستطيع اتخاذ إجراءات مختلفة بناء على نجاح الأوامر أو فشلها، وستُحدد تلك الإجراءات باستخدام عبارة if، وسيسمح هذا بتنفيذ مقارنات حسابية ونصية، واختبار رموز الخروج والمدخلات والملفات التي يحتاجها البرنامج. عادة ما يسبق الأوامر في برامج الصدفة اختبارُ if/then/fi لمنع إنشاء الخرج كي يعمل البرنامج في الخلفية أو من خلال أداة cron، أما الشروط الأكثر تعقيدًا فتوضع في عبارة case. ويخبر البرنامج الصدفة الأم عند نجاح اختبار الشرط باستخدام ...

اقتباس المحارف في Bash

فائدة اقتباس المحارف تحمل كثيرًا من المحارف والكلمات معاني ووظائف خاصة بشكل أو بآخر، ويُستخدم الاقتباس لإلغاء ذلك المعنى أو الوظيفة الخاصة، إذ تعطِّل علامات التنصيص في Bash تلك المعاملة التي يلقاها المحرف الخاص، وتمنع معاملة الكلمات الخاصة وفقًا للمعاني التي تحملها، وكذلك تعطِّل توسع المعامِلات. محارف الهروب تُستخدم محارف الهروب لإلغاء المعنى الخاص لمحرف واحد، وتُستخدم الشرطة المائلة الخلفية \ كمحرف للهروب في Bash، إذ تحتفظ بالمعنى المباشر للمحرف الذي يليها باستثناء محرف السطر الجديد، فإن أتى محرف سطر ...

التعابير النمطية في Bash

يلقي هذا الباب الضوء على المزايا المُضمَّنة في Bash لمطابقة الأنماط (patterns) والتعرف على فئات المحارف ومداها. إضافة إلى تفصيل للتعابير النمطية (Regular Expressions)، إذ هي أدوات قوية لاختيار أسطر بعينها من ملفات أو من مُخرج ما، وتستخدمها أوامر كثيرة في يونكس مثل vim و perl وقاعدة بيانات PotgreSQL وغيرها، كما يمكن إضافتها في أي لغة أو تطبيق باستخدام مكتبات خارجية، بل قد تجدها في أنظمة غير أنظمة يونكس، إذ يستخدمها برنامج Excel للجداول الذي يأتي في حزمة مكتب ويندوز. ...

التقاط الإشارات في Bash

قد تُرسل الإشارات إلى برامجك باستخدام أمر kill أو اختصارات على لوحة المفاتيح، ويمكن التقاط تلك الإشارات وتنفيذ أوامر بناءً على ذلك باستخدام أمر trap، ورغم أن بعض البرامج تتجاهل الإشارات إلا أن إشارة kill لا يمكن تجاهلها من أي برنامج. الإشارات في Bash نظرة عامة على الإشارات وإرسالها واستخدامها مع أمر kill. الأفخاخ في Bash نظرة عامة على الأفخاخ في Bash وكيف تفسرها الصدفة وأمثلة عليها.

حلقة while في Bash

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

الأوامر البديلة في Bash

فائدة الأوامر البديلة يسمح الأمر البديل (Alias) بوضع كلمة واحدة مكان مقطع نصي (string)، وذلك إن استُخدم كأول كلمة من أمر بسيط، وتحتفظ الصدفة بقائمة من الأوامر البديلة التي يمكن ضبطها وإلغاء ضبطها بأمريْ alias و unalias. اكتب alias في سطر الأوامر لترى قائمة من الأوامر البديلة المعرَّفة للصدفة الحالية: hsoub: ~> alias alias ..='cd ..' alias ...='cd ../..' alias ....='cd ../../..' alias PAGER='less -r' alias Txterm='export TERM=xterm' alias XARGS='xargs -r' alias cdrecord='cdrecord -dev 0,0,0 -speed=8' alias e='vi' alias egrep='grep -E' alias ewformat='fdformat -n /dev/fd0u1743; ewfsck' alias fgrep='grep -F' alias ftp='ncftp -d15' alias ...

العمليات على المتغيرات في Bash

العمليات الحسابية على المتغيرات ناقشنا العمليات الحسابية من قبل في التوسعات في Bash، انظر التوسع الحسابي. طول المتغير استخدم صيغة {VAR#}$ لحساب عدد المحارف في متغير ما، وإن كان VAR هو أحد المحرفيْن * أو @ فإن القيمة يحل محلها عدد المعامِلات الموضعية أو عدد العناصر داخل المصفوفة بشكل عام، انظر المثال التالي: [hsoub in ~] echo $SHELL /bin/bash [hsoub in ~] echo ${#SHELL} 9 [hsoub in ~] ARRAY=(one two three) [hsoub in ~] echo ${#ARRAY} 3 عمليات التحول في المتغيرات الإحلال Substitution {VAR:-WORD}$ إن لم ...

Document.write()‎

يكتب التّابع Document.write‎()‎ سلسلةً نصيّةً إلى مجرى (stream) مستندٍ فُتح بالتّابع window.open‎()‎. مُلاحظة: لأنّ التّابع Document.write‎()‎ يكتب إلى مجرى المستند، فاستدعاؤه على مستندٍ مُغلقٍ (مُحمَّل) يستدعي تلقائيًّا التّابع Document.open‎()‎، الذي سيحذف محتويات المستند. البنية العامة document.write(markup); markup سلسلة نصيّة تحتوي على النّص المرغوب كتابته على المستند. مثال <!DOCTYPE html> <html> <head> <title>write مثال</title> <script> function newContent() { alert("تحميل محتوى جديد"); document.open(); document.write("<h1>المحتوى ...

المزيد حول المتغيرات في Bash

يمكن للمتغير أن يحتوي أي نوع من البيانات ما لم يُصرح بخلاف ذلك بوضوح، وتُضبط المتغيرات الساكنة (Constant Variables) باستخدام أمر readonly. وتحتوي المصفوفة على مجموعة من المتغيرات، وإن صُرح بنوع معين من البيانات لتلك المصفوفة فإن جميع العناصر داخلها ستُضبط على احتواء ذلك النوع فقط من البيانات. كذلك تسمح مزايا Bash بإحلال وتحويل المتغيرات بسرعة، وتتضمن العمليات القياسية حساب طول المتغير والتوسعات الحسابية عليه وإحلال محتواه أو جزء من محتواه. أنواع المتغيرات في Bash شرح للقيم العامة للمتغيرات والمتغيرات ...

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

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

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

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

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

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

التابع ‎‎$.ajaxPrefilter()‎‎ في jQuery

jQuery.ajaxPrefilter( [dataTypes ], handler )‎ القيم المعادة يعيد قيمةً غير مُعرَّفة (undefined). الوصف يعالج هذا التابع إعدادات Ajax المخصَّصة أو يعدِّل إعدادات موجودة قبل أن يرسل كل طلب وقبل أن يعالج باستعمال الدالة ‎$.ajax()‎. jQuery.ajaxPrefilter( [dataTypes ], handler )‎ أُضيف مع الإصدار: 1.5. dataTypes سلسلة نصية اختياريَّة تحتوي على نوع بيانات (dataType) واحد أو عدَّة أنواع مفصولة بفراغ. handler دالة من الشكل Function( Object options, Object originalOptions, jqXHR jqXHR )‎ وتستعمل لتعيين قيم افتراضيَّة لطلبات Ajax المستقبليَّة. تبدو عملية الترشيح ...

التابع ‎‎$.ajaxPrefilter()‎‎ في jQuery

jQuery.ajaxPrefilter( [dataTypes ], handler )‎ القيم المعادة يعيد قيمةً غير مُعرَّفة (undefined). الوصف يعالج هذا التابع إعدادات Ajax المخصَّصة أو يعدِّل إعدادات موجودة قبل أن يرسل كل طلب وقبل أن يعالج باستعمال الدالة ‎$.ajax()‎. jQuery.ajaxPrefilter( [dataTypes ], handler )‎ أُضيف مع الإصدار: 1.5. dataTypes سلسلة نصية اختياريَّة تحتوي على نوع بيانات (dataType) واحد أو عدَّة أنواع مفصولة بفراغ. handler دالة من الشكل Function( Object options, Object originalOptions, jqXHR jqXHR )‎ وتستعمل لتعيين قيم افتراضيَّة لطلبات Ajax المستقبليَّة. تبدو عملية الترشيح ...

الأمران 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 ...

الصنف ARGF في روبي

الصنف ARGF هو مجرى (stream) صُمِّم ليُستخدَم في الملفات البرمجية (scritps) التي تُعالج الملفات المُمرَّرة إليها على شكل وسائط في سطر الأوامر (command-line arguments)، أو المُمرَّرة عبر مجرى الدخل القياسي (STDIN). تُخزَّن الوسائط المُمرَّرة للملف البرمجي في المصفوفة ARGV، إذ يخزَّن وسيط واحد في كل عنصر. تفترض ARGF أنّ الوسائط التي ليست أسماء ملفات (filenames) قد أزيلت من ARGV. انظر الشيفرة التالية مثلًا: $ ruby argf.rb --verbose file1 file2 ARGV #=> ["--verbose", "file1", "file2"] option = ARGV.shift #=> "--verbose" ARGV #=> ...

الدالة ‎‎jQuery.getScript()‎‎ في jQuery

jQuery.getScript( url [, success ] )‎ القيم المعادة تعيد كائنًا من النوع jqXHR. الوصف تجلب هذه الدالة ملف JavaScript من الخادم باستعمال طلب HTTP عبر الطريقة GET ثمَّ يُنفِّذه. jQuery.getScript( url [, success ] )‎ أُضيفت مع الإصدار: 1.0. url سلسلة نصية تحتوي على الرابط URL الذي سيُرسَل الطلب إليه. success دالةٌ من الشكل Function( String script, String textStatus, jqXHR jqXHR )‎ يراد تنفيذها إن نجح الطلب. هذه الدالة هي اختزالٌ للدالة jQuery.ajax()‎، إذ تكافئ: $.ajax({ url: url, ...

الدالة ‎‎jQuery.getScript()‎‎ في jQuery

jQuery.getScript( url [, success ] )‎ القيم المعادة تعيد كائنًا من النوع jqXHR. الوصف تجلب هذه الدالة ملف JavaScript من الخادم باستعمال طلب HTTP عبر الطريقة GET ثمَّ يُنفِّذه. jQuery.getScript( url [, success ] )‎ أُضيفت مع الإصدار: 1.0. url سلسلة نصية تحتوي على الرابط URL الذي سيُرسَل الطلب إليه. success دالةٌ من الشكل Function( String script, String textStatus, jqXHR jqXHR )‎ يراد تنفيذها إن نجح الطلب. هذه الدالة هي اختزالٌ للدالة jQuery.ajax()‎، إذ تكافئ: $.ajax({ url: url, ...

التابع ARGF.argv في روبي

يعيد التابع argv المصفوفة ARGV التي تحوي الوسائط المُمرّرة إلى ملفك البرمجي (script)، إذ يخزَّن في كلِّ عنصر من عناصرها وسيطٌ واحدٌ. البنية العامة argv → ARGV القيم المعادة تعاد المصفوفة ARGV التي تحوي الوسائط المُمرّّرة إلى ملفك البرمجي (script). أمثلة مثالٌ على استخدام التابع argv: $ ruby argf.rb -v glark.txt ARGF.argv #=> ["-v", "glark.txt"] انظر أيضًا التابع binmode: يفعِّل الوضع الثنائي (binary mode) للمجرى ARGF. مصادر قسم التابع argv في الصنف ARGF في توثيق روبي الرسمي.

التابع IO.write_nonblock‎ في روبي

يكتب التابع write_nonblock السلسلة النصية المُمرَّرة إليه في المجرى الذي استُدعي معه باستخدام استدعاء النظام write(2)‎ بعد تعيين قيمة الراية O_NONBLOCK الخاصة بواصف الملف (file descriptor) الأساسي. يستدعي التابع write_nonblock استدعاء النظام write(2)‎. ويتسبب في كافة الأخطاء التي يتسبب فيها استدعاء النظام write(2)‎، مثل Errno::EWOULDBLOCK و Errno::EINTR وغيرهما. قد تكون النتيجة أصغر من طول السلسلة النصية (أي أن الكتابة جزئية). لذا يجب أن يعالج المستدعي هذه الأخطاء، إضافة إلى مسألة الكتابة الجزئية. إن كان الاستثناء يساوي Errno::EWOULDBLOCK أو Errno::EAGAIN، فسيتم توسيعه ...

التابع IO.write‎ في روبي

يفتح التابع write ملفًا محدَّدًا ويكتب فيه السلسلة النصية المُمرَّرة إليه ثم يغلقه ويعيد عدد البايتات التي كتبها. يضمن التابع write أن يُغلق الملف قبل إعادة أية قيمة. إن كان المعامل الأخير عبارة عن جدول Hash، فسيحدد الخيارات الداخلية للتابع open()‎. البنية العامة write(name, string [, offset]) → integer write(name, string [, offset] [, opt])→ integer‎ المعاملات name‎ اسم الملف المراد كتابة السلسلة النصية string فيه. string‎ سلسلة نصية يراد كتابتها ضمن الملف. offset‎ عدد صحيح يمثل إزاحة موضع المؤشر في ...

التابع ‎‎jQuery.ajaxTransport()‎‎ في jQuery

jQuery.ajaxTransport( dataType, handler )‎ القيم المعادة يعيد قيمةً من النوع undefined. الوصف ينشئ هذا التابع كائنًا يعالج عملية الإرسال الفعلي لبيانات Ajax. jQuery.ajaxTransport( dataType, handler )‎ أُضيف مع الإصدار: 1.5. dataTypes سلسلة نصية تحدِّد نوع البيانات المراد استعمال هذا التابع معها. handler دالةٌ من الشكل Function( Object options, Object originalOptions, jqXHR jqXHR )‎ تعيد الكائن transport الجديد لاستعماله مع نوع البيانات المحدَّد في الوسيط الأول. الكائن transport هو كائنٌ يوفر تابعين اثنين هما: التابع send، والتابع abort اللذان تستعملهما الدالة ...

التابع ‎‎jQuery.ajaxTransport()‎‎ في jQuery

jQuery.ajaxTransport( dataType, handler )‎ القيم المعادة يعيد قيمةً من النوع undefined. الوصف ينشئ هذا التابع كائنًا يعالج عملية الإرسال الفعلي لبيانات Ajax. jQuery.ajaxTransport( dataType, handler )‎ أُضيف مع الإصدار: 1.5. dataTypes سلسلة نصية تحدِّد نوع البيانات المراد استعمال هذا التابع معها. handler دالةٌ من الشكل Function( Object options, Object originalOptions, jqXHR jqXHR )‎ تعيد الكائن transport الجديد لاستعماله مع نوع البيانات المحدَّد في الوسيط الأول. الكائن transport هو كائنٌ يوفر تابعين اثنين هما: التابع send، والتابع abort اللذان تستعملهما الدالة ...

التابع ARGF.write في روبي

يكتب التابع write السلسلة النصية الممرَّرة إليها على المجرى ARGF في حال كان الوضع inplace مفعَّلًا. البنية العامة write(string) → integer القيم المعادة يعاد عدد صحيح يمثل عدد البايتات التي كتبت على المجرى ARGF. انظر أيضًا التابع to_write_io:يعيد نسخةً من الصنف IO مرتبطةً بالمجرى ARGF للكتابة عليها في حال كان الوضع inplace مفعَّلًا. التابع read: يقرأ عددًا محددًا من البايتات من المجرى ARGF. التابع gets: يجلب السطر التالي من الملف الحالي في المجرى ARGF. التابع puts: يكتب الكائن أو ...

التابع IO.write‎ في روبي

يكتب التابع write السلاسل النصية المُمرَّرة إليه في المجرى الذي استدعي معه. يجب أن يكون المجرى مفتوحا في وضعية للكتابة. سيتم تحويل الوسائط غير النصية إلى سلسلة نصية باستخدام التابع to_s. البنية العامة write(string, ...) → integer‎ المعاملات string‎ سلسلة نصية يراد كتابتها في المجرى المعطى. القيمة المعادة تعاد عدد البايتات المكتوبة في المجرى. أمثلة مثال على استخدام التابع write‎: count = $stdout.write("This is", " a test\n") puts "That was #{count} bytes of data"‎ الناتج: This is a test That was 15 bytes of ...

 التابع 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 في توثيق روبي الرسمي.

التابع Keyboard.write()‎ في أردوينو

يرسل التابع write()‎ ضغطة زر واحدة من لوحة المفاتيح الافتراضية إلى الحاسوب المتصل. سلوك هذا التابع مماثل تمامًا لضغط أي زر في لوحة مفاتيحك ضغطةً واحدةً. يمكنك باستعمال هذه التابع إرسال أحد محارف ASCII إلى الحاسوب بما فيها تلك التي تمثِّل أحد مفاتيح التبديل. المحارف ASCII المدعومة في هذه التابع هي تلك الموجودة في لوحة المفاتيح فقط. على سبيل المثال، يمكن إرسال المحرف ASCII 8 (المسافة الخلفية)، ولكن لا يمكن إرسال المحرف ASCII 25 (الاستبدال [ASCII 25]) لعدم وجوده في ...

مقدمة إلى التعامل مع قواعد البيانات في Laravel

مقدمة يُبسّط Laravel التعامل مع قواعد البيانات بشكل كبير عبر مجموعة متنوعة من الأسندة الخلفية (backends) قواعد البيانات إمّا باستخدام  لغة الاستعلام البنيوية SQL خام أو باستخدام منشئ الاستعلامات الفصيح (fluent query builder)، أو باستخدام رابط الكائنات بالعلاقات Eloquent. يدعم Laravel حاليًا أربع قواعد بيانات: MySQL PostgreSQL SQLite SQL Server الضبط تقع إعدادات قاعدة بيانات تطبيقك في config/database.php. تستطيع في هذا الملف تعريف جميع اتصالات قاعدة بياناتك لإضافةً لتحديد الاتصال الافتراضي. تتوافر أمثلة عن معظم أنظمة قواعد البيانات المدعومة في ...

التابع IO.syswrite‎ في روبي

يكتب التابع syswrite السلسلة النصية المُمرَّرة إليه في المجرى الذي استُدعي معه باستخدام كتابة منخفض المستوى (low-level write).  لا تخلط هذا التابع مع التوابع الأخرى التي تكتب في المجرى، وإلا ستحصل على نتائج غير متوقعة. يُطلق الاستثناء SystemCallError عند حدوث خطأ. البنية العامة syswrite(string)→ integer‎ المعاملات string‎ سلسلة نصية يراد كتابتها على المجرى. القيمة المعادة يعاد عدد صحيح يمثِّل عدد البايتات المكتوبة في المجرى. أمثلة مثال على استخدام التابع syswrite‎: f = File.new("out", "w") f.syswrite("ABCDEF") #=> 6‎ انظر أيضًا التابع sysread: ...

التابع IO.close_write‎ في روبي

يغلق التابع close_write طرف الكتابة الخاص بمجرى د/خ مزدوج (duplex)؛ أي تلك المجاري التي تحتوي على مجريي قراءة وكتابة، مثل الأنابيب (pipes). سيُطلق الاستثناء IOError إن لم يكن المجرى مزدوجًا. أصبحت روبي تتجاهل استدعاء هذا التابع على مجاري د/خ المغلقة منذ الإصدار 2.3. البنية العامة close_write→ nil‎ القيمة المعادة تعاد القيمة nil بعد تنفيذ العملية. أمثلة مثال على استخدام التابع close_write‎: f = IO.popen("/bin/sh","r+") f.close_write f.print "nowhere"‎ ناتج تنفيذ هذه الشيفرة هو: prog.rb:3:in `write': not opened for writing (IOError) from prog.rb:3:in `print' from prog.rb:3‎ ...

Python/pathlib/Path/rename

التابع PurePath.rename في بايثون يعيد تسمية الملف أو المجلد بما يحدده الوسيط المُعطى. في نظام يونكس، إذا كان اسم الملف بعد إعادة التسمية موجودًا فعلًا كملف، فإنه يُستبدل دون أي إنذار إذا لدى المستخدم الصلاحيات اللازمة لذلك. يمكن أن يكون الوسيط الي يحدد اسم الملف بعد إعادة التسمية سلسلة نصية أو كائن مسار آخر. البنية العامة >>> p = Path('foo') >>> p.open('w').write('some text') 9 >>> target = Path('bar') >>> p.rename(target) >>> target.open().read() 'some text' المعاملات يمكن أن يكون الوسيط الذي يحدد اسم الملف بعد إعادة التسمية ...

الصنف Warning::buffer في روبي

توابع النسخة العامة write مصادر صفحة الصنف Warning::buffer في توثيق روبي الرسمي.

التابع DictWriter.writeheader()‎‎ في بايثون

يكتب التابع صفًّا مع أسماء الحقول (كما هو محدّد في الدالة البانية). ملاحظة: هذا التابع جديد في الإصدار 3.2. البنية العامة writeheader() ‎مصادر صفحة CSV File Reading and Writing في توثيق بايثون الرسمي.

التابع IO.copy_stream‎ في روبي

ينسخ التابع copy_stream بيانات من مجرى إلى مجرى آخر. البنية العامة copy_stream(src, dst) copy_stream(src, dst, copy_length) copy_stream(src, dst, copy_length, src_offset)‎ المعاملات src‎ اسم ملف أو كائن مشابه للصنف IO يمثِّل المصدر الذي سيُقرَأ منه. الكائنات المشابهة للصنف IO المُمررة إلى هذا المعامل يجب أن تُعرّف التابع readpartial أو read. dst‎ اسم ملف أو كائن مشابه للصنف IO يمثِّل الوجه التي ستُكتَب فيها البيانات التي قُرأَت من المصدر src. يجب أن يكون للكائنات المشابهة للصنف IO الممررة إلى المعامل dst التابع write. (في ...

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

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

الدالة cgitb.html()‎‎ في بايثون

تتعامل هذه الدالة مع الاستثناء الموصوف في المعاملات، وتنسّق رسالة الخطأ بصيغة HTML وتعيد النتيجة كسلسلة نصية. البنية العامة cgitb.html(info, context=5) ‎المعاملات info تصف قيمة هذا المعامل الاستثناء الذي ستتعامل معه الدالة، وقيمته عبارة عن صفٍّ tuple ذي ثلاثة عناصر وهو نتيجة استدعاء الدالة sys.exc_inf()‎. context معامل اختياري، يحدّد عدد الأسطر التي ستُعرض في رسالة الخطأ والتي تحيط بالسطر الذي يحتوي على الخطأ في الشيفرة المصدرية، ويأخذ هذا المعامل القيمة الافتراضية 5. القيمة المعادة تعيد الدالة رسالة الخطأ على هيئة ...

التابع ‎‎jQuery.holdReady()‎‎ في jQuery

jQuery.holdReady( hold )‎ القيم المعادة يعيد القيمة undefined. الوصف يعلِّق هذا التابع تنفيذ الحدث ready في jQuery أو يحرِّره إن كان معلَّقًا. jQuery.holdReady( hold )‎ أُضيفت مع الإصدار: 1.6. hold قيمةٌ منطقيَّةٌ (Boolean) تحدِّد إن كان يراد تعليق تنفيذ الحدث ready أم إطلاقه للعمل بعد أن كان معلقًا. يعمل التابع ‎$.holdReady()‎ على تأجيل تنفيذ استدعاء الحدث ready. سيستخدم هذه الميِّزة المتطورة عادةً محمِّلات السكربت الديناميكيَّة (dynamic script loaders) التي تريد تحميل شيفرة JavaScript إضافيَّة -مثل إضافات jQuery- قبل السماح للحدث ...

الدالة cgitb.handler()‎‎ في بايثون

تتعامل هذه الدالة مع استثناء معيّن باستخدام الإعدادات الافتراضية (عرض التقرير في متصفّح الويب، ولكن عدم حفظه في ملف منفصل). يمكن استخدام هذه الدالة عندما يكون هناك استثناء لم تلتقطه بايثون وترغب في عرض تقرير عنه باستخدام الوحدة cgitb. البنية العامة cgitb.handler(info=None) ‎المعاملات info معامل اختياري، وهو عبارة عن صفٍّ tuple مكوّن من ثلاثة عناصر هي نوع الاستثناء، وقيمة الاستثناء وكائن traceback، وهذا الصفّ مشابه للصفّ الذي تعيده الدالة sys.exc_info()‎. في حال عدم تزويد الدالة بالمعامل info، يُؤخذ الاستثناء الحاليّ ...

التابع ‎‎jQuery.holdReady()‎‎ في jQuery

jQuery.holdReady( hold )‎ القيم المعادة يعيد القيمة undefined. الوصف يعلِّق هذا التابع تنفيذ الحدث ready في jQuery أو يحرِّره إن كان معلَّقًا. jQuery.holdReady( hold )‎ أُضيفت مع الإصدار: 1.6. hold قيمةٌ منطقيَّةٌ (Boolean) تحدِّد إن كان يراد تعليق تنفيذ الحدث ready أم إطلاقه للعمل بعد أن كان معلقًا. يعمل التابع ‎$.holdReady()‎ على تأجيل تنفيذ استدعاء الحدث ready. سيستخدم هذه الميِّزة المتطورة عادةً محمِّلات السكربت الديناميكيَّة (dynamic script loaders) التي تريد تحميل شيفرة JavaScript إضافيَّة -مثل إضافات jQuery- قبل السماح للحدث ...

التابع IO.select‎ في روبي

يستدعي التابع select استدعاء النظام select(2)‎. ويراقب المصفوفة المعطاة المكونة من مجاري د/خ (كائنات IO)، وينتظر حتى يكون واحد أو أكثر من تلك المجاري جاهزًا للقراءة، وجاهزًا للكتابة، ويكون له استثناءات معلقة (pending exceptions) على التوالي، ثم يعيد مصفوفة مؤلفة من مصفوفات مكونة من تلك المجاري. ستعاد القيمة nil إذا تم إعطاء قيمة للمعامل timeout الاختياري (انظر فقرة البنية العامة)، ولم يكن أيٌّ من مجاري د/خ جاهزًا خلال تلك المهلة الزمنية. يراقب التابع select المخزن المؤقت (buffer) لمجرى د/خ لاختبار قابليته ...

الدالة cgitb.text()‎‎ في بايثون

تتعامل هذه الدالة مع الاستثناء الموصوف في المعاملات، وتنسّق رسالة الخطأ على هيئة نصٍّ صرف plain text وتعيد النتيجة كسلسلة نصية. البنية العامة cgitb.text(info, context=5) ‎المعاملات info تصف قيمة هذا المعامل الاستثناء الذي ستتعامل معه الدالة، وقيمته عبارة عن صفٍّ tuple ذي ثلاثة عناصر وهو نتيجة استدعاء الدالة sys.exc_inf()‎. context معامل اختياري، يحدّد عدد الأسطر التي ستُعرض في رسالة الخطأ والتي تحيط بالسطر الذي يحتوي على الخطأ في الشيفرة المصدرية، ويأخذ هذا المعامل القيمة الافتراضية 5. القيمة المعادة تعيد الدالة ...

التابع Serial.write()‎ في أردوينو

يكتب التابع write()‎ بيانات ثنائية على منفذ الاتصال التسلسلي. تُرسَل هذه البيانات كبايت أو سلسلة من البايتات. إن أردت إرسال محارف تمثِّل أرقام عددٍ، فاستعمل التابع print()‎ عوضًا ذلك. البنية العامة Serial.write(val) Serial.write(str) Serial.write(buf, len) // أيضًا Serial3, Serial2, Serial1 استعمال المنافذ Mega تدعم لوحات أردوينو المعاملات val قيمةٌ يراد إرسالها على أنَّها بايتٌ مفردٌ. str سلسلةٌ نصيةٌ يراد إرسالها بشكل سلسلة من البايتات المفردة. buf مصفوفةٌ يراد إرسالها بشكل سلسلة من البايتات المفردة. القيم المعادة يعاد عدد البايتات التي كُتبَت على المنفذ التسلسلي. ...

التابع Sniffer.has_header()‎‎ في بايثون

يحلّل التابع النموذج النصي المعطى (والذي يُفترض أن يكون بصيغة CSV) ويعيد القيمة True إن كان السطر الأول في الملف عبارة عن سلسلة من ترويسات الأعمدة. البنية العامة has_header(sample) القيمة المعادة يعيد القيمة True إن كان السطر الأول في الملف عبارة عن سلسلة من ترويسات الأعمدة. مصادر صفحة CSV File Reading and Writing في توثيق بايثون الرسمي.

التابع ARGF.binmode في روبي

يفعِّل التابع binmode الوضع الثنائي (binary mode) للمجرى ARGF؛ وبمجرد أن يصبح المجرى في الوضع الثنائي، لا يمكن إعادته إلى الوضع غير الثنائي. هذا الخيار له التأثيرات التالية: تصبح عملية تحويل السطر الجديد غير ممكنة. تصبح عملية تحويل الترميز غير ممكنة أيضًا. يُعامل المحتوى وكأنه كُتِب باستعمال الترميز ASCII-8BIT. البنية العامة binmode → ARGF انظر أيضًا التابع binmode?‎: يتحقق‎ إذا تمت قراءة المجرى ARGF في الوضع الثنائي (binary mode). التابع argv: يعيد المصفوفة ARGV التي تحوي الوسائط المُمرّّرة إلى ...

التابع TarInfo.tobuf()‎‎ في بايثون

ينشئ التابع سلسلة ذاكرة نصية من كائن TarInfo. البنية العامة TarInfo.tobuf(format=DEFAULT_FORMAT, encoding=ENCODING, errors='surrogateescape') ‎المعاملات ‎لمزيد من المعلومات حول معاملات هذا التابع راجع الدالة البانية للصنف TarFile. ملاحظة: في الإصدار 3.2 من بايثون تستخدم القيمة 'surrogateescape' كقيمة افتراضية للمعامل errors. مصادر صفحة Read and write tar archive files في توثيق بايثون الرسمي.

التابع TarFile.close()‎‎ في بايثون

يغلق التابع كائن TarFile. في وضع الكتابة، يلحق التابع بالأرشيف كتلتين من أصفار الإنهاء finishing zero block. البنية العامة TarFile.close() ‎أمثلة يبين المثال التالي طريقة استخدام التابع: >>> import tarfile >>> tar = tarfile.open('files.tar', 'w') >>> tar.close() انظر أيضًا التابع TarFile.open()‎: دالة بانية بديلة لكائنات TarFile. مصادر صفحة Read and write tar archive files في توثيق بايثون الرسمي.

التابع Thread.handle_interrupt‎ في روبي

يغير التابع handle_interrupt توقيت المقاطعة غير المتزامنة (asynchronous interrupt timing). المقاطعة (interrupt) يعني الحدث غير المتزامن (asynchronous event) والإجراء المقابل raise و kill وإشارة المسك (signal trap، غير مدعومة حاليًا) وعملية إنهاء المهمة الفرعية الرئيسية (عند إنهاء المهمة الفرعية الرئيسية، فسيتم إنهاء كل المهام الفرعية الأخرى). البنية العامة handle_interrupt(hash) { ... } → result of the block‎ يحتوي المعامل hash المعطى على أزواج على شاكلة ExceptionClass => :TimingSymbol إذ ExceptionClass هو مقاطعة (interrupt) المٌعالج من قبل الكتلة المعطاة. أما TimingSymbol فيمكن أن يكون ...

التابع Tarinfo.fromtarfile()‎‎ في بايثون

تابع صنف يقرأ العضو التالي من كائن TarFile المعطى ويعيده على هيئة كائن TarInfo. البنية العامة TarInfo.fromtarfile(tarfile) المعاملات tarfile كائن TarFile. القيمة المعادة يعيد التابع كائن TarInfo. انظر أيضًا التابع TarInfo.frombuf()‎: تابع صنف ينشئ ويعيد كائن TarInfo من سلسلة ذاكرة نصية string buffer (أو ما يعرف بملف الذاكرة) معطاة. مصادر صفحة Read and write tar archive files في توثيق بايثون الرسمي.

المعامل >> في الصنف IO‎ في روبي

يكتب المعامل >> كائنًا في المجرى IO المعطى. يُحول ذلك الكائن إلى سلسلة نصية باستخدام التابع to_s. البنية العامة ios << obj → ios‎ القيمة المعادة يعاد المجرى ios بعد كتابة الكائن obj فيه. أمثلة مثال على استخدام التابع ‎<<‎: $stdout << "Hello " << "world!\n"‎ انظر أيضًا التابع write: يفتح ملفًا محدَّدًا ويكتب فيه السلسلة النصية المُمرَّرة إليه ثم يغلقه ويعيد عدد البايتات التي كتبها. مصادر قسم المعامل >> في الصنف IO‎ في توثيق روبي الرسمي.

الدالة csv.field_size_limit()‎‎ في بايثون

تعيد الدالة الحجم الأقصى للحقل والذي يسمح المحلّل parser باستخدامه. البنية العامة csv.field_size_limit([new_limit]) المعاملات new_limit معامل اختياري يحدّد الحجم الجديد. القيمة المعادة تعيد الدالة الحجم الأقصى للحقل والذي يسمح المحلّل parser باستخدامه. أمثلة يبين المثال التالي آلية عمل الدالّة: >>> csv.field_size_limit() 131072 >>> csv.field_size_limit(160000) 131072 >>> csv.field_size_limit() 160000 مصادر صفحة CSV File Reading and Writing في توثيق بايثون الرسمي.

الدالة tarfile‎.is_tarfile()‎ في بايثون

تتحقق الدالة ممّا إذا كان بمقدور الوحدة tarfile قراءة ملف الأرشيف المعطى. البنية العامة tarfile.is_tarfile(name) ‎المعاملات ‎ name أرشيف tar الذي ستتحقّق الدالة من إمكانية فتحه بواسطة الوحدة tarfile. القيمة المعادة تعيد الدالة القيمة True إن كانت قيمة name هي ملف أرشيف من نوع tar يمكن للوحدة tarfile أن تقرأه، وتعيد القيمة False فيما عدا ذلك. مصادر صفحة Read and write tar archive files في توثيق بايثون الرسمي.

الدالة csv.writer()‎‎ في بايثون

تعيد الدالة كائن كتابة وظيفته تحويل بيانات المستخدم إلى سلاسل نصية مفصولة عن بعضها البعض وكتابتها في الكائن المعطى وهو كائن شبيه بالملفات، ويمكن كذلك استخدام أيّ كائن يمتلك التابع write()‎. إن كانت قيمة هذا المعامل كائن ملف، فيجب أن يكون مفتوحًا مع المعامل newline=''‎. ملاحظة: إن لم تحدد القيمة newline=''‎ لن تُفسّر الأسطر الجديدة في الحقول المحاطة بعلامات اقتباس بطريقة صحيحة، وسيضاف رمز ‎\r إضافي إلى الأسطر المنتهية بالرمز ‎\r\n في المنصّات التي تستخدم الرمز الأخير في نهايات الأسطر. ...

الصنف IOError في روبي

يُطلق الاستثناء IOError عند فشل عملية إدخال/إخراج (IO operation) في روبي. File.open("/etc/hosts") {|f| f << "example"} #=> IOError: not opened for writing File.open("/etc/hosts") {|f| f.close; f.read } #=> IOError: closed stream تذكر أنَّ فشل بعض عمليات الإدخال/الإخراج قد يؤدي إلى إطلاق الاستثناء SystemCallError، وهذا الاستثناء ليس متفرع من الصنف IOError. File.open("does/not/exist") #=> Errno::ENOENT: No such file or directory - does/not/exist مصادر صفحة الصنف IOError في توثيق روبي الرسمي.

التابع csvreader.__next__()‎‎ في بايثون

يعيد التابع السطر التالي في كائن المكرّر iterable object الخاص بكائن القراءة. البنية العامة csvreader.__next__() القيمة المعادة يعيد التابع السطر التالي في كائن المكرّر الخاص بكائن القراءة على هيئة قائمة (إن كان الكائن معادًا من الدالة reader()‎) أو قاموس (إن كان الكائن نسخة من الصنف DictReader) وتكون القيمة المعادة مفسّرة بحسب اللهجة المستخدمة. يُستدعى هذا التابع عادة بهذه الطريقة next(reader)‎. مصادر صفحة CSV File Reading and Writing في توثيق بايثون الرسمي.

الصنف Sniffer()‎‎ في بايثون

يستخدم هذا الصنف لتخمين الصيغة المستخدمة في ملف CSV. توابع الصنف Sniffer التابع Sniffer.sniff()‎ يحلّل التابع النموذج المعطى ويعيد صنفًا متفرعًا من الصنف Dialect الذي يعكس المعاملات التي عثر عليها التابع. التابع Sniffer.has_header()‎ يتحقق التابع من كون السطر الأول في ملف csv عبارة عن سلسلة من ترويسات الأعمدة. انظر أيضًا الوحدة csv في بايثون: تقدّم وحدة csv عددًا من الأصناف التي تساعد في قراءة البيانات المجدولة وكتابتها بصيغة CSV. مصادر صفحة CSV File Reading and Writing في توثيق بايثون الرسمي.

الدالة csv.list_dialects()‎‎ في بايثون

تعيد الدالة قائمة باللهجات المسجّلة. البنية العامة csv.list_dialects()‎ ‎ القيمة المعادة تعيد الدالة قائمة باللهجات المسجّلة. أمثلة يبين المثال التالي آلية عمل الدالة: >>> import csv >>> csv.list_dialects() ['excel', 'excel-tab', 'unix'] انظر أيضًا الدالة csv.register_dialect()‎: تربط الدالة اللهجة المعطاة بالاسم المحدّد.. الدالة csv.unregister_dialect()‎: تحذف الدالة اللهجة المرتبطة بالاسم المعطى من سجلّ اللهجات. الدالة csv.get_dialect()‎: تعيد الدالة اللهجة المرتبطة بالاسم المعطى. الصنف Dialect. مصادر صفحة CSV File Reading and Writing في توثيق بايثون الرسمي.

التابع TarFile.getmembers()‎‎ في بايثون

يعيد التابع أعضاء الأرشيف على هيئة قائمة من كائنات TarInfo، وتأخذ القائمة نفس ترتيب الأعضاء في الأرشيف. البنية العامة TarFile.getmembers() ‎القيمة المعادة يعيد التابع أعضاء الأرشيف على هيئة قائمة من كائنات TarInfo. أمثلة يبين المثال التالي آلية عمل التابع: >>> import tarfile >>> tar = tarfile.open('files.tar') >>> tar.getmembers() [<TarInfo 'file1.txt' at 0x7f486610b2a0>, <TarInfo 'file2.html' at 0x7f486610b048>, <TarInfo 'file3.py' at 0x7f486610b1d8>] انظر أيضًا التابع TarFile.getmember()‎: يعيد التابع كائن TarInfo لعضو ملف الأرشيف المعطى. التابع TarFile.getnames()‎: يعيد التابع قائمة بأسماء الأعضاء في الأرشيف. مصادر صفحة ...

التابع Tarinfo.frombuf()‎‎ في بايثون

تابع صنف classmethod ينشئ ويعيد كائن TarInfo من سلسلة ذاكرة نصية string buffer (أو ما يعرف بملف الذاكرة) معطاة. البنية العامة TarInfo.frombuf(buf, encoding, errors) المعاملات buf سلسلة ذاكرة نصية string buffer يستخدمها التابع لإنشاء كائن TarInfo. القيمة المعادة يعيد التابع كائن TarInfo. يطلق التابع الاستثناء HeaderError إن كان ملف الذاكرة غير صالح للاستخدام. انظر أيضًا التابع TarInfo.fromtarfile()‎: تابع صنف يقرأ العضو التالي من كائن TarFile المعطى ويعيده على هيئة كائن TarInfo. مصادر صفحة Read and write tar archive files في توثيق ...

الدالة cgitb.enable()‎‎ في بايثون

يؤدّي استدعاء هذه الدالة إلى تولّي وحدة cgitb مسؤولية معالجة الاستثناءات عوضًا عن أداة المعالجة الافتراضية في مفسّر بايثون وذلك بتعيين قيمة للدالة sys.excepthook()‎. البنية العامة cgitb.enable(display=1, logdir=None, context=5, format="html") ‎المعاملات ‎display معامل اختياري، يأخذ القيمة الافتراضية 1، ويمكن أن يأخذ القيمة 0 وبذلك تُمنع الدالة من إرسال رسالة الخطأ إلى متصفّح الويب. logdir إن كان المعامل logdir موجودًا، فإنّ رسالة الخطأ ستُكتب إلى ملف، وقيمة هذا المعامل هو المجلّد الذي سيحتوي على هذه الملفات. context معامل اختياري، يحدّد عدد ...

التابع TarFile.getnames()‎‎ في بايثون

يعيد التابع قائمة بأسماء الأعضاء في الأرشيف. البنية العامة TarFile.getnames() القيمة المعادة يعيد التابع قائمة بأسماء الأعضاء في الأرشيف، وتأخذ القائمة المعادة نفس ترتيب القائمة المعادة من التابع getmembers()‎. أمثلة يبين المثال التالي آلية عمل التابع: >>> import tarfile >>> tar = tarfile.open('files.tar') >>> tar.getnames() ['file1.txt', 'file2.html', 'file3.py'] انظر أيضًا التابع TarFile.getmember()‎: يعيد التابع كائن TarInfo لعضو ملف الأرشيف المعطى. التابع TarFile.getmembers()‎: يعيد التابع أعضاء الأرشيف على هيئة قائمة من كائنات TarInfo. مصادر صفحة Read and write tar archive files في توثيق بايثون ...

التابع Sniffer.sniff()‎‎ في بايثون

يحلّل التابع النموذج المعطى ويعيد صنفًا متفرعًا من الصنف Dialect الذي يعكس المعاملات التي عثر عليها التابع. البنية العامة sniff(sample, delimiters=None) المعاملات ‎delimiters معامل اختياري، تُفسّر قيمته كسلسلة نصية تحتوي على المحارف التي يحتمل استخدامها كفواصل في ملف CSV. القيمة المعادة يعيد التابع صنفًا متفرعًا من الصنف Dialect. أمثلة يبين المثال التالي طريقة عمل التابع: with open('example.csv', newline='') as csvfile: dialect = csv.Sniffer().sniff(csvfile.read(1024)) csvfile.seek(0) reader = csv.reader(csvfile, dialect) ...

التابع TarFile.open()‎‎ في بايثون

يعدّ تابع الصنف هذا بمثابة دالة بانية لكائنات TarFile. والدالة tarfile.open()‎ هي في الواقع اختصار لتابع الصنف هذا. البنية العامة TarFile.open(...) المعاملات يمتلك هذا التابع نفس المعاملات الموجودة في الدالة البانية للصنف TarFile. القيمة المعادة يعيد التابع كائن TarFile. أمثلة لو فرضنا وجود ملفّ مضغوط بصيغة tar فيمكن الوصول إلى هذا الملف وإنشاء كائن TarFile بالطريقة التالية: >>> import tarfile >>> tar = tarfile.TarFile.open("file.tar.xz") يمثّل tar الآن كائن TarFile يمكن استخدامه لتنفيذ التوابع الخاصة بهذا الكائن. انظر أيضًا الدالة tarfile.open()‎: تعيد ...

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