62 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| title: Bash
 | |
| localeTitle: سحق
 | |
| ---
 | |
| ## ما هو باش؟
 | |
| 
 | |
| Bash (باختصار لـ Bourne Again SHell) هي shell Unix ، ومترجم لغة أوامر. القشرة هي مجرد معالج ماكرو ينفذ الأوامر. إنه غلاف المستخدم الأكثر استخدامًا بشكل افتراضي لمعظم توزيعات Linux ، وخلف لـ shell Korn (ksh) و C shell (csh).
 | |
| 
 | |
| يمكن القيام بالعديد من الأشياء التي يمكن القيام بها بنظام التشغيل Linux عبر سطر الأوامر. بعض الأمثلة ...
 | |
| 
 | |
| *   تحرير الملفات
 | |
| *   ضبط حجم نظام التشغيل
 | |
| *   جلب صفحات الويب من الإنترنت
 | |
| *   أتمتة العمل الذي تقوم به كل يوم
 | |
| 
 | |
| يمكنك قراءة المزيد عن bash [هنا](https://www.gnu.org/software/bash/) ، عبر [وثائق GNU](https://www.gnu.org/software/bash/manual/html_node/index.html#SEC_Contents) ، وعبر [دليل tldp](http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html#toc10) .
 | |
| 
 | |
| ## استخدام bash في سطر الأوامر (Linux ، OS X)
 | |
| 
 | |
| يمكنك البدء في استخدام bash في معظم أنظمة التشغيل Linux و OS X من خلال فتح جهاز طرفي. دعونا نعتبر مثالًا بسيطًا في عالم الترحيب. افتح الطرفية الخاصة بك واكتب السطر التالي (كل شيء بعد علامة $):
 | |
| 
 | |
|  `zach@marigold:~$ echo "Hello world!" 
 | |
|  Hello world! 
 | |
| ` 
 | |
| 
 | |
| كما ترى ، استخدمنا أمر echo لطباعة سلسلة "Hello world!" إلى المحطة.
 | |
| 
 | |
| ## كتابة برنامج نصي bash
 | |
| 
 | |
| يمكنك أيضًا وضع كل أوامر bash في ملف .sh وتشغيلها من سطر الأوامر. لنفترض أنه لديك برنامج نصي bash يحتوي على المحتويات التالية:
 | |
| 
 | |
|  `#!/bin/bash 
 | |
|  echo "Hello world!" 
 | |
| ` 
 | |
| 
 | |
| تجدر الإشارة إلى أن السطر الأول من النص البرمجي يبدأ بـ `#!` . إنه توجيه خاص يعامله يونكس بشكل مختلف.
 | |
| 
 | |
| #### لماذا استخدمنا #! / bin / bash في بداية ملف البرنامج النصي؟
 | |
| 
 | |
| هذا لأنه هو اتفاقية للسماح للقذيفة التفاعلية معرفة نوع المترجم للتشغيل للبرنامج التالي. يخبر السطر الأول يونكس أن الملف يتم تنفيذه بواسطة / bin / bash. هذا هو الموقع القياسي لقذيفة بورن على كل نظام يونكس. تؤدي إضافة #! / bin / bash باعتبارها السطر الأول من النص البرمجي ، إلى إخبار نظام التشغيل باستدعاء shell المحدد لتنفيذ الأوامر التي تتبع في البرنامج النصي. `#!` غالبًا ما يشار إليه على أنه "فرقعة" ، أو "ضرب" أو "فرقعة". على الرغم من أنه يتم تنفيذه فقط إذا قمت بتشغيل البرنامج النصي الخاص بك كملف قابل للتنفيذ. على سبيل المثال ، عندما تكتب `./scriptname.extension` ، ستنظر إلى السطر العلوي لاكتشاف المترجم ، بينما يتم تشغيل البرنامج النصي باسم `bash scriptname.sh` ، يتم تجاهل السطر الأول.
 | |
| 
 | |
| ثم يمكنك تشغيل البرنامج النصي مثل: لجعل الملف القابل للتنفيذ يجب عليك استدعاء هذا الأمر تحت sudo chmod + x "filename".
 | |
| 
 | |
|  `zach@marigold:~$ ./myBashScript.sh 
 | |
|  Hello world! 
 | |
| ` 
 | |
| 
 | |
| البرنامج النصي يحتوي على سطرين فقط. يشير الأول إلى ما الذي يجب أن يستخدمه مترجم لتشغيل الملف (في هذه الحالة ، bash). السطر الثاني هو الأمر الذي نريد استخدامه ، صدى ، متبوعًا بما نريد طباعته وهو "Hello World".
 | |
| 
 | |
| في بعض الأحيان لن يتم تنفيذ النص البرمجي ، وسيعرض الأمر أعلاه خطأً. يرجع ذلك إلى الأذونات المحددة على الملف. لتجنب هذا الاستخدام:
 | |
| 
 | |
|  `zach@marigold:~$ chmod u+x myBashScript.sh 
 | |
| ` 
 | |
| 
 | |
| \` ثم قم بتنفيذ البرنامج النصي.
 | |
| 
 | |
| ### معلومات اكثر:
 | |
| 
 | |
| *   ويكيبيديا: https://en.wikipedia.org/wiki/Bash _(_ غلاف _يونكس_ )
 | |
| *   tldp.org دليل باش: http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html#toc2
 | |
| *   دليل bash gnu.org: https://www.gnu.org/software/bash/manual/html _node / index.html # SEC_ المحتويات
 | |
| *   برنامج نصي البرمجة شل للبدء: https://www.shellscript.sh/ |