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/ |