<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ar">
	<id>https://3rabica.org/index.php?action=history&amp;feed=atom&amp;title=%D8%B4%D9%84_%D8%B3%D9%83%D8%B1%D8%A8%D8%AA</id>
	<title>شل سكربت - تاريخ المراجعة</title>
	<link rel="self" type="application/atom+xml" href="https://3rabica.org/index.php?action=history&amp;feed=atom&amp;title=%D8%B4%D9%84_%D8%B3%D9%83%D8%B1%D8%A8%D8%AA"/>
	<link rel="alternate" type="text/html" href="https://3rabica.org/index.php?title=%D8%B4%D9%84_%D8%B3%D9%83%D8%B1%D8%A8%D8%AA&amp;action=history"/>
	<updated>2026-06-09T13:53:20Z</updated>
	<subtitle>تاريخ التعديل لهذه الصفحة في الويكي</subtitle>
	<generator>MediaWiki 1.43.7</generator>
	<entry>
		<id>https://3rabica.org/index.php?title=%D8%B4%D9%84_%D8%B3%D9%83%D8%B1%D8%A8%D8%AA&amp;diff=1516381&amp;oldid=prev</id>
		<title>عبد العزيز: بوت: إصلاح التحويلات</title>
		<link rel="alternate" type="text/html" href="https://3rabica.org/index.php?title=%D8%B4%D9%84_%D8%B3%D9%83%D8%B1%D8%A8%D8%AA&amp;diff=1516381&amp;oldid=prev"/>
		<updated>2023-01-08T13:13:07Z</updated>

		<summary type="html">&lt;p&gt;بوت: إصلاح التحويلات&lt;/p&gt;
&lt;p&gt;&lt;b&gt;صفحة جديدة&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{لا مصدر|تاريخ=يناير 2022}}&lt;br /&gt;
{{ترجمة آلية|تاريخ=فبراير 2016}}&lt;br /&gt;
{{عن|scripting in UNIX-like systems|batch programming in DOS, OS/2 and Windows|Batch file}}&lt;br /&gt;
[[ملف:FreeBSD 10 vi RC Firewall.png|تصغير|Editing a [[فري بي إس دي|فري بي ‌إس ‌دي]] shell script for configuring [[ipfirewall]]]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;شيل سكربت {{إنج|shell script }}&amp;#039;&amp;#039;&amp;#039; هي [[برنامج (حاسوب)|برنامج كمبيوتر]] تم تصميمه للعمل بواسطة [[شل يونكس|يونكس شيل]] {{إنج| Unix shell}} (وهو مترجم سطر الأوامر command-line interpreter) هناك عدة أنواع من لغات الشيل سكربت وهي تعتبر من لغات السكربت (لغات تستخدم لتنفيذ مجموعة من الاوامر مكتوبة في [[ملف نصي]] وليس ملف تنفيذي) ويتم عملها عن طريق [[واجهة سطر الأوامر]] لـ [[نظام تشغيل|نظام التشغيل]] وتعتبر كانها [[واجهة أوامر (حوسبة)|قشرة]] خارجية للتعامل مع البرامج.&lt;br /&gt;
&lt;br /&gt;
العمليات التي يتم انجازها بواسطة الشيل سكربت تشمل تنفيذ برنامج أو معالجة أو طباعة نص، هناك نوع من السكربت يسمى المغلف Wrapper وهي تقوم بتهيئة بيئة عمل أو تشغيل برنامج أو تنظيف للكمبيوتر ومهام سابقة أو تسجيل دخول أو غيرها.&lt;br /&gt;
 &lt;br /&gt;
وفي الغالببة تكون بسيطة ويمكن أن نقول عنها انها [[لغة برمجة]] مصممة لتكون مفيدة لمجموعة محددة من المهام. والعمليات النموذجية التي تؤديها مخطوطات قذيفة تشمل معالجة الملف، وتنفيذ برنامج وطباعة النص.والعديد من المترجمين الفوريين شيل مزدوجة كما هي في [[واجهة سطر الأوامر]]، مثل [[مقدمة شل]]، [[باورشل|ويندوز باورشيل]] أو [[إم إس-دوس]] الأمر.كوم. وآخرون مثل سيناريو [[بل (توضيح)|بل]] أو الرسومية ويندوز سيناريو المضيف (WScript.exe), إضافة إلى القدرة على البرمجة بيئات الحوسبة دون الحاجة إلى واجهة سطر الأوامر&lt;br /&gt;
وهناك أمثلة أخرى من لغة برمجة تهدف في المقام الأول للبرمجة شل تشمل&lt;br /&gt;
DIGITAL Command Language و Job Control Language&lt;br /&gt;
&lt;br /&gt;
== قدرات ==&lt;br /&gt;
=== اختصارات ===&lt;br /&gt;
في شكلها الأكثر أساسية، يمكن أن توفر شيل تباينات مريحة من حيث أمر النظام إعدادات البيئة الخاصة، الأمر خيارات، أو تحليل نتائج تطبيق تلقائيا، ولكن في الطريقة التي يسمح البرنامج النصي جديدة لقانون لا يزال كأمر طبيعي تماما يونكس. ومن الأمثلة على ذلك لإنشآء نسخة من [[إل إس]] الأمر إلى قائمة الملفات، ويعطيها اسما أقصر قيادة لتر، وهو ما سوف يتم حفظها عادة في الدليل بن المستخدم كما&lt;br /&gt;
/ الوطن / اسم المستخدم / بن / لتر، ومجموعة افتراضية من خيارات الأمر قبل الموفر.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
LC_COLLATE=C ls -FCas &amp;quot;$@&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
هنا Shebang (Unix) ما يشير إلى مترجم ينبغي استخدامه لتنفيذ بقية البرنامج النصي والخط الثاني يجعل قائمة مع خيارات لمؤشرات تنسيق الملف، والأعمدة، وجميع الملفات (لا يوجد حذف)، وحجم في كتل.ويتم تعيين = LC_COLLATE جيم ترتيب الافتراضي لعدم اضعاف حالة العلوية والسفلية معا، و&amp;quot;$ @&amp;quot; أسباب لتمريرها، حتى يتسنى لجميع من الخيارات الطبيعية وبناء أخرى معروفة لا تزال قادرة على استخدامه.&lt;br /&gt;
وسوف يكون المستخدم قادرا على استخدامه ببساطة بالنسبة للقائمة القصيرة الأكثر شيوعا.&lt;br /&gt;
&lt;br /&gt;
=== الوظائف التي على شكل دفعات ===&lt;br /&gt;
شل مخطوطات تسمح بتنفيذ العديد من الأوامر التي من شأنها أن تدخل يدويا في واجهة سطر الأوامر تلقائيا، وبدون الحاجة إلى الانتظار للمستخدم التشغيل في كل مرحلة من مراحل التسلسل. وعلى سبيل المثال، نشاهد في الدليل مع الملفات الثلاثة جيم شفرة المصدر، وبدلا من تشغيله يدويا للأوامراللازمة لبناء أربعة برامج نهائية منها، يمكن للمستخدم أن ينشئ بدلا من ذلك&lt;br /&gt;
C shell النصية وهي هنا تساعد على البناء والاحتفاظ بها في الدليل، والتي تقوم بتجميعها تلقائيا:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/csh&lt;br /&gt;
echo compiling...&lt;br /&gt;
cc -c foo.c&lt;br /&gt;
cc -c bar.c&lt;br /&gt;
cc -c qux.c&lt;br /&gt;
cc -o myprog foo.o bar.o qux.o &lt;br /&gt;
echo done.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
السيناريو هنا سوف يتيح للمستخدم حفظ الملف الذي يتم تحريره، وقفة المحرر، ثم تشغيل فقط. بناء لإنشاء برنامج تحديث واختبار، ومن ثم العودة إلى المحرر. منذ 1980s أو نحو ذلك، ومع ذلك، فقد تم استبدال النصوص من هذا النوع مع المرافق العامة مثل صنع المتخصصة في صنع [[برنامج (توضيح)|البرامج]].&lt;br /&gt;
&lt;br /&gt;
=== تعميم ===&lt;br /&gt;
وظائف دفعة بسيطة ليست غير عادية لمهام معزولة، ولكن باستخدام حلقات شل، والاختبارات، والمتغيرات التي توفر مرونة أكبر للمستخدمين. شيل بورن ثانية لتحويل الصور إلى صور الحياة السياسية في [[فرنسا]] بابوا [[غينيا الجديدة]]، حيث يتم تقديم أسماء الصورة على سطر الأوامر—ربما عن طريق البدل—بدلا من سرد كل ما يجري داخل السيناريو، ويمكن أن تنشئ مع هذا الملف، وعادة ما حفظ في ملف مثل&lt;br /&gt;
الصفحة الرئيسية/اسم المستخدم/بآين/ jpg2png&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
for jpg in &amp;quot;$@&amp;quot; ; do                         # use $jpg in place of each filename given, in turn&lt;br /&gt;
    png=&amp;quot;${jpg%.jpg}.png&amp;quot;                    # find the PNG version of the filename by replacing.jpg with.png&lt;br /&gt;
    echo converting &amp;quot;$jpg&amp;quot;...               # output status info to the user running the script&lt;br /&gt;
    if convert &amp;quot;$jpg&amp;quot; jpg.to.png ; then      # use the convert program (common in Linux) to create the PNG in a temp file&lt;br /&gt;
        mv jpg.to.png &amp;quot;$png&amp;quot;                 # if it worked, rename the temporary PNG image to the correct name&lt;br /&gt;
    else                                     #...otherwise complain and exit from the script&lt;br /&gt;
        echo &amp;#039;error: failed output saved in &amp;quot;jpg.to.png&amp;quot;.&amp;#039; 1&amp;gt;&amp;amp;2&lt;br /&gt;
        exit 1&lt;br /&gt;
    fi                                       # the end of the &amp;quot;if&amp;quot; test construct&lt;br /&gt;
done                                         # the end of the &amp;quot;for&amp;quot; loop&lt;br /&gt;
echo all conversions successful              # tell the user the good news&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ويمكن بعد ذلك الأمر jpg2png يتم تشغيلها على الدليل الكامل فقط.&lt;br /&gt;
&lt;br /&gt;
=== شئ محتمل ===&lt;br /&gt;
&lt;br /&gt;
ومن السمات الرئيسية للمخطوطات قذيفة هو أن يتم التعامل مع كمترجما لنظام التشغيل الميزة الأساسية. وبدلا من شل للمستخدم فقط أن تكون قادرة على تنفيذ البرامج النصية في اللغة، أو برنامج نصي فقط في وجود&lt;br /&gt;
مترجم التوجيه التعامل بشكل صحيح تم تشغيله من شل (كلاهما القيود في التعامل مع شل بورن في وقت مبكر من الكتابات)، يتم تعيين البرامج النصية قذيفة وأعدموا من قبل نظام التشغيل نفسه. شيل الحديثة ليس فقط على قدم المساواة مع أوامر النظام، ولكن هي في الواقع كثيرة بدلا مخطوطات قذيفة (أو أكثر عموما، ومخطوطات، حيث أنها لا تفسر بعض منهم بقذيفة، ولكن بدلا من ذلك&lt;br /&gt;
[[بيرل]] [[بايثون (توضيح)|بايثون]] أو بعض اللغات الأخرى. ويمتد هذا إلى رموز الإنهاء وعودة النظام الأخر مثل المرافق للإشارة إلى النجاح أو الفشل، مما يسمح لهم كما دعا عناصر من أكبر البرامج بغض النظر عن كيفية تنفيذ هذه الأدوات بشكل أكبر.&lt;br /&gt;
&lt;br /&gt;
مثل أوامر النظام الموحد، ومخطوطات قذيفة حذف كلاسيكي أي نوع من ملحقإت اسم الملف ما لم يقصد به أن يكون قراءة في شل يعمل من خلال آلية خاصة لهذا الغرض (&amp;quot;.&amp;quot;، أو مصدر في الدعم).&lt;br /&gt;
&lt;br /&gt;
=== البرمجة ===&lt;br /&gt;
وهناك العديد من الميزات أيضا وإن العروض المختلفة الحديثة وعادة ما توجد فقط في أكثر تطورا&lt;br /&gt;
[[لغة برمجة]] متعددة الاستخدامات مثل التحكم في تدفق يبني، والمتغيرات، والتعليقات، صفائف&lt;br /&gt;
روتين مع هذه الأنواع من الميزات المتوفرة، فمن الممكن لكتابة تطبيقات متطورة بدرجة معقولة، ومخطوطات قذيفة. ومع ذلك، لا تزال محدودة من جانب حقيقة أن معظم لغات شل يحظون بدعم كبير أو كتابة بيانات النظم والطبقات، والترابط، والرياضيات المعقدة، وغيرها من الميزات المشتركة لغة كاملة، وهنا أيضا عموما أبطأ بكثير من التعليمات البرمجية المترجمة أو تفسير لغات مكتوبة مع سرعة الأداء كهدف.&lt;br /&gt;
&lt;br /&gt;
== لغات البرمجة الأخرى ==&lt;br /&gt;
&lt;br /&gt;
ولقد تم إدخال العديد من لغات البرمجة القوية للمهام التي هي كبيرة جدا أو معقدة ليتم التعامل معها بشكل مريح مع البرامج النصية القذيفة العادية، ولكن مزايا نصية مرغوبة والحمل تطوير شاملة، لغة البرمجة المترجمة سيكون غير ملائم. تفاصيل من [[لغة برمجة نصية|لغات البرمجة النصية]] [[لغة برمجة عالية المستوى]] مصدر متكرر للمناقشة. ولكن بصفة عامة لغة برمجة واحدة هو الذي يتطلب وجود مترجم.&lt;br /&gt;
&lt;br /&gt;
== دورة الحياة ==&lt;br /&gt;
ونصوص شل غالبا ما تكون بمثابة المرحلة الأولى في مجال تطوير البرمجيات، وغالبا ما تكون عرضة للتحويل في وقت لاحق إلى التنفيذ المختلفة الكامنة، والأكثر استخدامآ والتي يتم تحويلها إلى [[بيرل]]&lt;br /&gt;
[[بايثون (توضيح)|بايثون]]، أو [[سي (لغة برمجة)]] مترجم التوجيه وتسمح التفاصيل لتنفيذ مهام مخفية تماما داخل السيناريو، وبدلا من التعرض لاسم ملف التمديد، وينص على reimplementation السلسة في لغات مختلفة مع أي تأثير على المستخدمين النهائيين.&lt;br /&gt;
&lt;br /&gt;
== انظر أيضا ==&lt;br /&gt;
* [[شل يونكس]]s&lt;br /&gt;
* [[باورشل|ويندوز باورشيل]]&lt;br /&gt;
== المراجع ==&lt;br /&gt;
{{مراجع}}&lt;br /&gt;
&lt;br /&gt;
== وصلات خارجية ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.faqs.org/docs/air/tsshell.html &amp;#039;&amp;#039;An Introduction To Shell Programming&amp;#039;&amp;#039; by Greg Goebel]&lt;br /&gt;
* [http://steve-parker.org/sh/sh.shtml &amp;#039;&amp;#039;UNIX / Linux shell scripting tutorial&amp;#039;&amp;#039; by Steve Parker]&lt;br /&gt;
* [https://web.archive.org/web/20100901073633/http://developer.apple.com/mac/library/documentation/OpenSource/Conceptual/ShellScripting/ &amp;#039;&amp;#039;Shell Scripting Primer&amp;#039;&amp;#039; (Apple)]&lt;br /&gt;
* [https://web.archive.org/web/20090324070111/http://www.linux.com/articles/34658 &amp;#039;&amp;#039;What to watch out for when writing portable shell scripts&amp;#039;&amp;#039; by Peter Seebach]&lt;br /&gt;
* [http://freebookcentre.net/UnixCategory/Free-Unix-Shell-Programming-Books-Download.html Free Unix Shell scripting books]&lt;br /&gt;
{{شريط بوابات|معلوماتية|برمجة الحاسوب}}&lt;br /&gt;
&lt;br /&gt;
[[تصنيف:لغات برمجة نصية]]&lt;/div&gt;</summary>
		<author><name>عبد العزيز</name></author>
	</entry>
</feed>