1-مقدمة تاريخية :
9- التعامل مع المنافذ :
using dos key to work with command
استخدام برنامج مفتاح الدوس للتعامل مع الاوامر
يمكنك برنامج مفتاح الدوس من عرض وتحرير وتنفيذ أوامر الدوس التى أستخدمتها سابقا كما يمكنك كتابة أكثر من أمر فى سطر واحد
كما يمكنك من انشاء وتنفيذ وحفظ اوامر الماكرو (macro command) .
والماكرو عبارة عن أمر أو أكثر من أوامر الدوس المحفوظة فى الذاكرة رام .
وهى تعمل مثل ملفات الباتش(سنتعرف عليها فى حينه)
وعند تشغيل هذا البرنامج للمرة الاولى فانه يحمل فى الذاكرة رام ويحفظ الاوامر التى تكتبها.
install doskey:
تحميل برنامج مفتاح الدوس
ولكى تحمل الدوس أكتب doskey امام المحث ثم أضغط enter واذا كنت تستخدم الويندوز فاتبع المسار التالى.
doskey
مالم تحدد شىء آخر فان مفتاح الدوس سيحجز 512 بايت من الذاجرة لحفظ الاوامر التى تكتبها.
فلو انك تكتب اوامر بمتوسط 15 حرف فان مفتاح الدوس يحجز 35 امر .
ولكى تحفظ عدد اوامر اكثر او اقل يمكنك لستخدام الامر
/bufsize=n
e.g.
doskey /bufsize=300
فى هذا المثال قمنا بحجز 300 بايت من الذاكرة .
وفى حالة تعدى الاوامر العدد المسموح به فانه سيتم الغاء لأقدم الاوامر.
typing more than one command on a line:
كتابة أكثر من أمر فى السطر الواحد:
فى الاحوال العادية يمكنك كتابة امر واحد فى السطر الواحد ولكن بعد تشغيل برنامج مفتاح الدوس يمكنك تشغيل اكثر من امر على نفس السطر وذلك باستخدام العلامة ¶ والتى ستظهر فى كل مرة تضغط ctrl+t ويمكنك بذلك كتابة اى عدد من الاوامر تريد فى السطر الواحد
*عدد الحروف فى السطر الواحد 128.
فعلى سبيل المثال اذا أردت حذف الملفات tmp الموجودة فى المجلد tmp نستخدم الامرين فى سطر واحد كلاتى :
del \tmp\*.* ¶ rd \tmp
ويمكنك حذف البفر عن طريق alt+f7
viewing previous command:
اظهار الاوامر السابقة:
up arrow: يعرض الاوامر السابقة
down arrow: يعرض الاوامر التالية
F7 يعرض كل الاوامر المخزنة
F8 يبحث عن الاوامر التى تبدأ بحرف حددته مسبقا(عن طريق كتابة الحرف ثم الضغط على f8)
F9 ينبهك كى تكتب رقم الامر الذى تريد تنفيذه(يمكنك عرض جمبع الاوامر ب f7 ثم تختار رقم الامر المراد تنفيذه).
page up: يعرض أقدم الاوامر
page down: يعرض أحدث الاوامر
esc: يلغى الامر من على الشاشة
home: ينقل المؤشر الى بداية السطر
end: ينقل المؤشر الى نهاية السطر
left arrow: ينقل المؤشر حرف واحد للخلف.
right arrow: ينقل المؤشر حرف واحد للامام.
ctrl+left arrow: ينقل المؤشر كلمة واحدة للخلف
ctrl+right arrow: ينقل المؤشر كلمة واحدة للامام.
backspace : يحرك المؤشرgp`t حرف واحد للوراء
del :يحذف الحرف الذى يقف عليه.
ctrl+end:يحذف كل الحروف من بداية المؤشر لاخر حرف.
ctrl+home يحذف الحروف من بداية المؤشر لاول حرف
ins: يحشر حرف
esc: يمسح الشاشة
ولحذف قائمة الاوامر المخزنة نضغط alt+f7
*يتم حذف القائمة اليا اذا أعدنا تشغيل برنامج مفتاح الدوس أو اعدنا تشغيل الكمبيوتر.
**لتخزين الاوانر المستخدمة على ملف /history
e.g. doskey /history > m.txt
using doskey to work with macros:
ماهو الماكرو:
الماكرو عبارة عن مجموعة من الاوامر يتم تنفيذها عند تشغيل ملف الماكرو.
وهو شبيه جدا بملفات الباتش - حيث ان كل منهما عبارة عن مجموعة من الاوامر يتم تنفيذها عند التشغيل -مع بعض الاختلاف
منه
1--الماكرو مخزن فى الرام بينما الباتش على قرص ولهذا
أ- ملفات الماكرو أسرع فى التنفيذ من ملفات الباتش.
ب-يمكن تشغيل ملفات الماكرو من اى دليل نقف عليه بينما الباتش لا.
ج-عند القيام بغلق الجهاز يتم فقد ملفات الماكرو بينما الباتش لا.
د-تأخذ ملفات الماكرو جزء من مساحة الذاكرة
2-يتم الباتش عن طريق كتابة الاوامر وحفظها فى ملف ,بينما يتم انشاء الماكرو عن طريق وضع الاوامر فى تعريف الماكرو وعلى هذا
أ-فى الباتش يوضع كل أمر فى سطر منفصل,بينما فى الماكرو توضع كل الاوامر فى سطر واحد يفصلها علامة .
ب-يمكن وضع اى عدد من الاوا مر فى ملفات الباتش بينما نحن محددين ب127 حرف فقط فى ملفات الماكرو.
3-فى الباتش لايقاف تنفيذ الاوامر يتم ضغط ctrl+c بينما فى الماكرو يتم ضغط ctrl+c فى لكل أمر لمنع تنفيذه
4-فى ملف الباتش تأخذ الوسائط القيم من 1% الى 9% بينما فى الماكرو 1$ الى 9$
5- فى ملفات الباتش يمكنك التنقل داخل الملف عن طريق go to كما يمكنك الانتقال الى ملف باتش اخر من داخل الملف الحالى ,بينما لا يحدث ذلك فى الماكرو
6-يمكنك تشغيل ملف باتش من داخل الماكرو بينما لايمكنك تشغيل ملف ماكرو من داخل الباتش الا انه يمكنك تضمين اوامر لانشاء ملف ماكرو داخل الباتش.
7-لايمكنك استخدام امر echo off مع الماكرو لمنع ظهور الاوامر أثناء تنفيذها.
crewating macro:
انشاء الماكرو:
يتم ذلك عن طريق كتابة doskey متبوعة باسم الملف ثم الامر المراد تنفيذه.
doskey ddir=dir /w
التحليل: لقد لأنشأنا الان أمر يسمى ddir هذا الامر محفوظ فى الذاكرة ram ويقوم باستعراض الملفات عرضيا بتقسيم الشاشة الى اربعة اعمدة.
لكتابة اكثر من امر فى السطر الواحد نفصل بين الامر والامر ب t$
doskey cmp=dir *.doc /o:n $t dir *.bak /o:n
اذا كنت تستخدم ماكرو معين بكثرة يمكنك أن تضعه فى ملف autoexec.bat ليكون متاح لك فى كل مرة تفتح الدوس فيها.
running a macro.
لتشغيل الماكرو اكتب اسم الماكرو الذى سميته ثم اضغط ادخال (enter)
لحذف الماكرو
DOSKEY (FILENAME)=
ولاتكتب أى شىء أمام علامة =
ثم أضغط أدخال
USING REPLACEABLE PARAMETERS:
أستخدام الوسائط الاحلالية:
ان استخدام الوسائط فى الماكرو مشابه لاستخدامه فى ملفات الباتش عدا أن فى الباتش نستخدم القيم من %1 الى %9 أما فى الماكرو نستخدم
القيم $1 الى $9 .
المثال التالى يقوم بعرض كل الملفات الموجودة فى الدليل c:
doskey m = dir c:\$1 /s
فبمجرد كتابة الحرف M فى أى دليل تقف عليه يتم عرض كل الملفات الموجودة فى الدليل c
ويمكنك أستخدام الوسيط الواحد أكثر من مرة.
ففى المثال التالى سيتم نقل ملف من d:\m الى الدليل c:\cnc
doskey move=copy d:\m\$1 c:\cnc $t del d:\m\$1
لو أفترضنا الان أن الدليل d:\m يوجد به ملف man فبمجرد كتابة الامر
move man
سيتم نقل هذا الملف من الدليل d:\m الى الدليل e:\cnc
using the $* replaceable parameter:
استخدام الوسيط $*
\
\
\
\
\
\
\
\
\
\
redirection input and output
اعادت توجيه المداخل والمخارج:
أن توجيه المداخل والمخارج مشابه تماما بما نفعله فى الدوس عدا أن الرموز تختلف فى الماكرو عنها فى الدوس
$L(or $1) = <توجه الدخول
$G (or$g)= > توجه الخروج
$G$G (or $g$g) = >> وهو بالحاق ملف بنهاية ملف آخر
$B(or$b) = | وهو يقوم بتوجيه المخرج من امر لآخر
على سبيل المثال السطر يقوم بانشاء ماكرو يدعى L يطبع فهرس الدليل فى ملف c:\LI
doskey L=dir $g c:\LI\list.txt
اليك هذا المثال التالى :
doskey asort =sort $L $1 $g $2
هذا المثال ينشئ ملف ماكرو يسمى asort هذا الملف يرتب الملفات هجائيا ثم يخزنها فى ملف مختلف.
ولتشغيل هذا البرنامج نكتب asort فيقوم برنامج مفتاح الدوس بابدال $1 بأول أسم ملف تضعه ,ثم يقوم $L بتوجيه الملف الى الامر sort
ثم يقوم كل من $g و $2 بتوجيه خروج الامر sort الى الملف الثانى الذى تحدده
مثال : بعد انشاءك للsort macro قم بكتابة الامر
asort input.txt output text
وهذا مماثل للامر
sort < input.txt> output.txt