PDA المساعد الشخصي الرقمي

عرض كامل الموضوع : قائمة بأوامر الدوس التي قد تفيدك كمنتج



LOLSKATER
08-06-2012, 10:29
ولكن قبل شرح هذا الأمر يجب أن نشرح أمر مهم جدا وهو الـ piping.
"الضخ" أو الـ piping هي آلية لإرسال عناصر مخرجات برنامج معين إلى برنامج آخر. قد تكون مخرجات البرنامج الأول عناصر نصية (ascii) مثل النصوص العادية وملفات النصوص txt
أو ثنائية (binary). مثل الصور والصوتيات والفيديو.

ويمكن استخدام الخاصية هذه عن طريق رمز الأنبوبة " | "

1. أمر More
وهو يفيد في تقسيم مخرجات الأوامر إلى صفحات لتسهيل قراءتها على دفعات، فمثلا:
عند كتابة أمر المساعدة في إنكودر x264

x264 --fullhelp
فسيرمي بكامل نص المساعدة إلى الكونسول دون أن تقرأه على دفعات، حيث ستضطر إلى الطلوع للأعلى عن طريق الفأرة أو ما شابه.

ولكن عند استخدام هذا الأمر وآلية استخدامه كالتالي:

x264 --fullhelp | more
فسيطبع النص بقدر حجم نافذة محرر الأوامر، ويمكنك بعد قراءة الدفعة الأولى (أو الصفحة الأولى) الضغط على زر مسافة لكي ينتقل للصفحة الثانية، أو زر Enter لعرض سطر إضافي آخر. ويمكن الخروج عن طريق ضغط حرف Q أو ctrl+c

2. أمر Clip:
ووظيفته هي وضع النصوص في الذاكرة حيث يمكن بعد ذلك لصقها في أي مكان آخر عن طريق ctrl+v أو أي آلية أخرى. ويستخدم كالتالي على سبيل المثال:

x264 --fullhelp | clip
مثال آخر:

dir /x /b | clip

ولنسخ محتويات ملف نصي إلى الذاكرة:

clip < timecodes.txt

3. أمر Dir
ويستخدم هذا الأمر لاستعراض الملفات داخل مجلد معين

dir /?
4. مزيد من المعلومات عن الـضخ piping والـتحويل redirecting:
تسمى عادة مخرجات الأوامر التي تطبع على الشاشة بـ standard output. ويعد standard output أو اختصاراً stdout أحد أجهزة الكونسول الثلاثة. وهي:
1. standard input أو stdin، في الحالة الطبيعية يقوم باستقبال أوامر المتسخدم أو استقبال مخرجات برنامج آخر. فعندما تشغل برنامج معين، ويعطيك البرنامج خيارات yes/no فهو قد فتح جهاز الـ stdin.
2. standard output أو stdout، ويعد مسؤولا عادةً عن طباعة المخرجات على شاشة الكونسول.
3. standard error أو stderr، ويعد شبه stdout ولكنه مسؤول عن طباعة أوامر الخطأ أو مؤشرات التحميل loading أو العدادات، وهو غير قابل للتحويل أو النسخ للذاكرة بطريقة مباشرة عن طريق الـ piping أو redirecting.

والآن عن الـ redirecting:
يمكن تحويل مخرجات الأوامر التي تستخدم جهاز stdout إلى ملفات عن طريق رمز "أكبر من"
<

فمثلا لحفظ (توجيه/تحويل) مخرجات أمر x264 --fullhelp لملف نصي يمكن استخدام الرمز بالشكل التالي:

x264 --fullhelp >file.txt

ولتوجيه محتويات ملف نصي إلى stdin لبرنامج معين يتم استخدام رمز "أصغر من"

more < timecodes.txt

الكثير منا يستخدم الـ piping عند إنتاج 10 بت أو استخدام إنكودر 64-bit مع avisynth 32-bit، ففي هذه الحالة يتم استخدام stdout لبرنامج avs2yuv لأخذ البكسلات الخام ذات الصيغة الثنائية binary ومن ثم توجيهها عن طريق الضخ piping للـ stdin الخاص ببرنامج x264.

ويمكن استخدام الضخ لكثير من البرامج على نفس الشاكلة.
فبعض البرامج لا تقبل إلا صيغة معينة، مثل بعض إنكودرات الصوت لا تقبل إلا أن يكون الصوت uncompressed wave أو يسمى PCM wave.
في هذه الحالة يلجأ الكثير إلى حفظ ملف wav ومن ثم استخدامه مع البرنامج القاصر. ولكن لا داعي لهذا مع وجود خاصية الضخ.

على سبيل المثال:
برنامجي neroaac الخاص بضغط mpeg-4 audio و oggenc الخاص بضغط صوتيات كودك vorbis.
هذان البرنامجان لا يقبلان إلا صيغة PCM wav، لذا يمكننا استخدام أي ديكودر كوماندلاين، على سبيل المثال ffmpeg. بهذه الطريقة:

ffmpeg -i myfile.ac3 -f wav - | oggenc -q 2 -o output.ogg -
حيث علامة الشرطات تفيد كتابة المخرج إلى الجهاز المناسب، فـ ffmpeg سيكتب المخرج في stdout، ورمز الضخ سيقوم بتوجيه الـ stdin إلى برنامج آخر ورمز الـ "-" في oggenc يفيد باستقبال الصوت من stdin الموجه من برنامج آخر.

وفي NeroAac:

ffmpeg -i myfile.ac3 -f wav - | neroaacenc -q 0.3 -if - -of output.mp4


5. أمر findstr
ووظيفة هذا الأمر هي البحث في النصوص عن أنماط معينة، وهو بشكل افتراضي يستقبل النصوص من stdin.
فعلى سبيل المثال تريد أن تبحث عن كلمة معينة في الـ help الخاص ببرنامج معين، لنقل على سبيل المثال x264
ونريد ان نبحث عن وظيفة أمر qcomp وقيمته الافتراضية. نكتب التالي:

x264 --fullhelp | findstr qcomp
الناتج:
--qcomp <float> QP curve compression [0.60]


6. أمر Echo
وهذا الأمر له وظائف عديدة، فهو بشكل أساسي يقوم بإخفاء أو إظهار الجزء الذي يظهر المجلد الحالي،
مثلا نحن حاليا في مجلد

c:\windows>
فكتابة أمر Echo OFF سيقوم بإخفاء جزء وسيظهر المؤشر في أول السطر. وأمر Echo ON يعيد السلوك الافتراضي لمحرر الأوامر.

كما يقوم الأمر كذلك بطباعة أي نص يأخذه. مثلا:

echo Hello World!
سيطبع على الشاشة عبارة Hello World!
وإذا تم تنفيذ الأمر بدون إعطائه أي نص فسيقوم بعرض حالة الـ echo الحالية:

C:\Windows>echo
ECHO is on.



ويمكن الاستفادة من الأمر في أشياء كثيرة، فعلى سبيل المثال، لا داعي لأن تفتح المفكرة لكتابة سكربت avs من سطر واحد، يمكنك كتابة السكربت مباشرة من الدوس، مثلاً:

echo ffvideosource("episode1.mp4") >EP1.avs
وسيكون لدينا ملف الـ avs جاهز للعمل :)
ففي هذه الحالة لن يطبع الأمر ما أخذه على الشاشة،
بل سيتم تحويل المطبوع إلى ملف avs عن طريق خاصية التوجيه (تم شرحها سابقًا).

7. أمر for
هذا الأمر مهم جدا لتكرير أمر معين على مجموعة ملفات. فمثلا يمكنك عن طريقه إنتاج عدد هائل من الملفات بأمر واحد
وصيغته هي كالتالي:

for %d in (set) do command
%d عبارة عن متغير يتم أخذه بالمرو على قيم set
set: مجموعة من الملفات
command: الأمر

على سبيل المثال:

for %d in (*.mp4) do x264 --preset medium --tune animation --crf 26 -o "%d.mkv" %d
في هذا المثال، سيتم في كل مرة استبدال d% بملف من ملفات *.mkv الموجودة في المجلد حتى يمر عليها جميعا ثم يتوقف الأمر. أي سيقوم الأمر بتحويل جميع ملفاتmp4 الموجودة في المجلد الحالي إلى mkv. بالإعدادات:
--preset medium --tune animation --crf 26
يمكن قراءة المزيد عن إمكانيات أمر for الرائع عن طريق

for /?

وأي أسئلة عن أوامر أخرى سيتم الإجابة عليها. وسيتم إضافة أوامر قوية أخرى بفترات متقطعة.

امجد صلاح
08-06-2012, 10:44
شكرا درموشي

الموضوع فعلا مفيد

LOLSKATER
08-06-2012, 11:09
حياك الله

the_kaiser
08-06-2012, 14:50
سلمت يداك درموش

GunPowder
09-06-2012, 16:45
شكرا درموشتي على تفانيك في الموضوع :).

|Imagin|
09-06-2012, 20:33
شكراً درموش يا قلب :d

انتظر الأوامر القويه :]

LOLSKATER
12-06-2012, 06:26
حيا الله الجميع

التحميل عن طريق الدوس:
الدوس كما قلنا عالم واسع بل إن صح القول فهو الأساس ويمكن عمل كل شيء عن طريقه، فالأنظمة العملاقة تدار من قبل محررات أوامر بسيطة مثل Bash وpowershell.

ميزات التحميل عن طريق الدوس:
1. يمكن استكمال تحميل الملفات بسهولة على عكس المتصفحات فهي تجبر على إعادة تحميل الملف من جديد عند حدوث مشكلة ما مثل انقطاع الاتصال أو غيرها.
2. تخفيف الضغط على المتصفح حيث أن التحميل سيأخذ موارد إضافة من الذاكرة المخصصة للمتصفح.
3. إمكانية تحميل ملفات عملاقة حيث أن متصفح مثل فايرفوكس قد يغص مع الوقت ومع كثر فتح الصفحات، فبعض الناس قد يفتح في متصفحه اكثر من 200 تاب (مثلي خخ) عندها لا تفاجئ بالكراشات البغيضة.

نسخدم لهذا أداة وهي أداة مفتوحة المصدر تعمل على جميع الأنظمة، يتم استخدامها بالشكل التالي:
1. لبدء تحميل جديد:

wget http://www.example.com/files/somefile.ext
2. ولاستكمال تحميل سابق:

wget -c http://www.example.com/files/somefile.ext
حيث مفتاح c- يدل على continue أي استكمل التحميل.

قد يأتي شخص ويقول أن برنامج IDM يمكنه استكمال التحميل واستخدام عدد كبير من الاتصالات لنفس وإلخ من الميزات، هذا صحيح وهو برنامج قوي لكن اولا هو برنامج غير مجاني$$ ، ثانيا نحن لسنا بصدد الحديث عن الواجهات الرسومية فنحن نتكلم عن أدوات الكوماند لاين هنا، صح :d؟

السيئة الوحيدة لبرنامج wget هي انه لا يدعم الاتصالات المتعددة لنفس السيرفر أي لا يمكنه فتح 8 اتصالات للسيرفر وتحميل كل ثمن من الملف باتصال (أي كما يفعل IDM)، لذلك توجد أداة أخرى هي aria2 وهي أداة أقوى ويمكنها تحميل تورنت أيضا.

امجد صلاح
12-06-2012, 09:08
حيا الله الجميع

التحميل عن طريق الدوس:
الدوس كما قلنا عالم واسع بل إن صح القول فهو الأساس ويمكن عمل كل شيء عن طريقه، فالأنظمة العملاقة تدار من قبل محررات أوامر بسيطة مثل Bash وpowershell.

ميزات التحميل عن طريق الدوس:
1. يمكن استكمال تحميل الملفات بسهولة على عكس المتصفحات فهي تجبر على إعادة تحميل الملف من جديد عند حدوث مشكلة ما مثل انقطاع الاتصال أو غيرها.
2. تخفيف الضغط على المتصفح حيث أن التحميل سيأخذ موارد إضافة من الذاكرة المخصصة للمتصفح.
3. إمكانية تحميل ملفات عملاقة حيث أن متصفح مثل فايرفوكس قد يغص مع الوقت ومع كثر فتح الصفحات، فبعض الناس قد يفتح في متصفحه اكثر من 200 تاب (مثلي خخ) عندها لا تفاجئ بالكراشات البغيضة.

نسخدم لهذا أداة وهي أداة مفتوحة المصدر تعمل على جميع الأنظمة، يتم استخدامها بالشكل التالي:
1. لبدء تحميل جديد:

wget http://www.example.com/files/somefile.ext
2. ولاستكمال تحميل سابق:

wget -c http://www.example.com/files/somefile.ext
حيث مفتاح c- يدل على continue أي استكمل التحميل.

قد يأتي شخص ويقول أن برنامج IDM يمكنه استكمال التحميل واستخدام عدد كبير من الاتصالات لنفس وإلخ من الميزات، هذا صحيح وهو برنامج قوي لكن اولا هو برنامج غير مجاني$$ ، ثانيا نحن لسنا بصدد الحديث عن الواجهات الرسومية فنحن نتكلم عن أدوات الكوماند لاين هنا، صح :d؟

السيئة الوحيدة لبرنامج wget هي انه لا يدعم الاتصالات المتعددة لنفس السيرفر أي لا يمكنه فتح 8 اتصالات للسيرفر وتحميل كل ثمن من الملف باتصال (أي كما يفعل IDM)، لذلك توجد أداة أخرى هي aria2 وهي أداة أقوى ويمكنها تحميل تورنت أيضا.

شكرا درموشي على هذه الاضافة