أدوات سطر الأوامر للمطورين
نشرت: 2022-03-11في عالم الإنترنت اليوم ، لا تزال معركة جذب المستخدمين محتدمة ، حيث يفضل صانعو التطبيقات تطبيقات الهاتف المحمول أو تطبيقات الويب. أصبحت تطبيقات سطح المكتب أقل أهمية. علاوة على ذلك ، فهم لا يميلون إلى أن يكونوا أكثر من عملاء أغنياء لتطبيقات الويب - يعد Electron النظام الأساسي المفضل المفضل.
هل هذا يعني أننا سنتخلى قريبًا عن سطح المكتب كمنصة؟ لا ، بالطبع لا ، لن أقول ذلك. علاوة على ذلك ، بينما يبدو أن تطبيقات واجهة المستخدم الرسومية قد توقفت مؤخرًا ، هناك شريحة من تطبيقات سطح المكتب التي تستمر في النمو.
هل سبق لك أن شاهدت أي فيلم يعرض قراصنة؟ في أغلب الأحيان ، يظهر هؤلاء الأشخاص وهم يعملون أمام الشاشات التي تعرض نوعًا من المحطات الطرفية (عادةً مع خلفية داكنة ومقدمة فاتحة). هذه المحطة ، بدورها ، تميل إلى أن تغمرها الشخصيات العابرة التي يبدو أنها تحمل بعض المعنى للشخص الذي يشاهدها.
غالبًا ما يتم الاستهزاء بمثل هذه تمثيلات المتسللين أثناء العمل من قبل المطورين المحترفين ، وهناك أيضًا بعض البرامج التي تحاكي تأثيرات "الهاكر" المختلفة ، من أجل المتعة فقط.
ومع ذلك ، في العالم الحقيقي ، لا يتم استخدام أدوات سطر الأوامر لقيمتها الترفيهية.
لماذا ما زلنا نستخدم أدوات واجهة سطر الأوامر
تركز هذه المقالة على الجانب العملي لاستخدام أدوات واجهة سطر الأوامر (CLI). يمكن أن تجعلك معرفة أوامر CLI واستخدام أدوات الجودة أكثر إنتاجية ويمكن أن تفتح الأبواب أيضًا لأساليب مختلفة للأتمتة تكون أكثر عملية بكثير مع الواجهات النصية مقارنة بتطبيقات واجهة المستخدم الرسومية.
يمكنك تحسين أداء المهام المتكررة في واجهة المستخدم الرسومية ، لدرجة أن نقراتك المتعددة تُسمع على أنها واحدة طويلة واحدة. المشكلة هي أن هذا لن يتغلب على كفاءة النص المتخصص. علاوة على ذلك ، فإن إجراء نفس العمليات يدويًا يقدم حملاً معرفيًا إضافيًا واحتمالًا متزايدًا للخطأ البشري. كالعادة ، نعتمد على أجهزة الكمبيوتر للتعامل مع المهام التي قد يجدها البشر مملة أو متكررة أو مربكة.
من الجدير معرفة أن الأداة الطرفية يمكن أن تقدم عدة أنواع من الواجهات. هناك عناصر غير تفاعلية مثل ls ، والتي تأخذ ببساطة المعلمات وتوفر المخرجات. توجد واجهات تفاعلية أو شبه تفاعلية غالبًا في مديري الحزم. ("هل أنت متأكد أنك تريد متابعة التثبيت من مصدر لم يتم التحقق منه؟") بعد ذلك ، هناك واجهات مستخدم نصية (TUIs) ، وهي تطبيقات واجهة مستخدم رسومية تفاعلية مصممة لتلائم قيود الجهاز الطرفي. ربما يكون أشهرها هو Midnight Commander (mc) ، وهو استنساخ من Norton Commander الشهير للغاية (في التسعينيات).
أدوات سطر الأوامر الأساسية
إذا كنت تريد أن تصبح ساكنًا في وحدة التحكم ، فأنت بحاجة إلى تجهيز نفسك بالحد الأدنى من أدوات مطور سطر الأوامر المحددة —- الأساسيات. الأشياء التي لا يمكنك العيش بدونها بالتأكيد هي قشرة تفاعلية (تهدف إلى شيء حديث مع استكمال مناسب لعلامات التبويب) ومحرر نصوص .
الآن ، سوف أذكر فلسفة UNIX ، والتي غالبًا ما تكون الأساس وراء قرارات التصميم التي يتخذها مؤلفو الأداة ، سواء بوعي أم بغير وعي. يمكن تلخيص بعض النقاط الرئيسية على النحو التالي:
- تعامل مع كل شيء كملف.
- افعل شيئًا واحدًا فقط ، لكن افعله جيدًا.
- اقرأ من الإدخال القياسي ، واكتب إلى الإخراج القياسي ، وانقل الأخطاء إلى تدفق خطأ قياسي.
- عند النجاح ، يتم إرجاع الرمز 0. القيمة غير الصفرية تعني خطأ (يمكن تحديده بواسطة رمز الإرجاع الدقيق).
- السماح بتسلسل الأوامر والبرمجة النصية.
الصدف
أول شيء تراه عند فتح الجهاز الطرفي هو قذيفة. هذا هو الجزء الذي يجعل التفاعل بين المستخدم والجهاز ممكنًا. يفسر أوامرك ، ويقسمها إلى أسماء البرامج والحجج ، وينفذ جميع أوامر shell التي تلقيها عليه.
تاريخيا ، كان هناك العديد من أنواع القذائف المختلفة. من بين أكثرها شيوعًا كان csh (C Shell) والتطبيقات المختلفة لـ Bourne Shell (المعروفة عادةً باسم sh ). امتدت شركة Bourne Shell إلى Korn Shell والتي اكتسبت أيضًا بعض القوة ولا تزال تستخدم من قبل المتحمسين لها. Csh هو حاليًا الغلاف الافتراضي في بعض أنظمة BSD ، بينما تفضل جميع أنظمة التشغيل الأخرى المشابهة لـ UNIX تقريبًا نوعًا من Bourne Shell. تميل توزيعات Linux إلى تفضيل bash بينما يأتي Mac OS X مع zsh كخيار افتراضي.
هناك احتمالات أخرى ، لكنها أقل شيوعًا ، باستثناء Microsoft PowerShell على أنظمة Windows. PowerShell مستوحى جزئيًا من قذائف UNIX التفاعلية مثل zsh وجزئيًا من وقت تشغيل .NET. بدلاً من التعامل مع كل شيء كنص ، وهو مفهوم شائع في عالم UNIX ، فإنه يسمح بمعالجة البيانات الموجهة للكائنات.
على الرغم من أن Microsoft PowerShell يحظى بشعبية كبيرة في مجال Windows ، إلا أن العديد من البرامج ذات أصول UNIX (أبرزها Git أو Autotools أو Make) تميل إلى تفضيل بعض الاختلافات في Bourne Shell. لهذا السبب ، ولدت مشاريع مثل msys (مجمعة مع Git for Windows) ، أو Cygwin ، أو WSL الأخير من Microsoft. إذا كنت تريد شعورًا يشبه نظام Linux على نظام التشغيل Windows ، فإن MSys هو الخيار الأفضل هنا. إذا كنت تريد بيئة Linux كاملة الميزات قادرة على تشغيل ثنائيات Linux القياسية ، فإن WSL هو السبيل للذهاب. بالنسبة لشيء ما بينهما - API UNIX ولكن تم تجميعه كملف Windows قابل للتنفيذ (استخدمه فقط عندما تعرف بالفعل سبب حاجتك إليه) - Cygwin هو الحل.
محرر
بمجرد التعرف على قوقعتك ، سترغب في اكتساب بعض المهارات المفيدة. نظرًا لأن معظم أعمال الترميز تتمحور حول كتابة نص (رمز ، READMEs ، رسائل الالتزام) ، فإن المعرفة الجيدة بمحرري النصوص التفاعلية أمر ضروري. هناك الكثير للاختيار من بينها ، ونظرًا لأن المحرر هو أحد أكثر الأدوات الضرورية لأي مطور ، فمن المحتمل أن يكون هناك العديد من الآراء حول أي محرر هو الأفضل.
يمكن فصل أكثر برامج تحرير النصوص شيوعًا إلى مجموعتين أساسيتين: محررات النصوص البسيطة ومحررات النصوص القابلة للبرمجة .
يمكن أن يكون كلاهما رائعًا لكتابة التعليمات البرمجية ، ولكن ، كما يوحي الاسم ، توفر تلك القابلة للبرمجة القدرة على تشكيل المحرر وتخصيصه ليناسب احتياجاتك تمامًا. يأتي هذا بسعر ، حيث تميل أيضًا إلى أن يكون لها منحنى تعليمي أكثر حدة وقد تتطلب مزيدًا من الوقت لإعدادها.
محررات النصوص الأساسية
من بين برامج تحرير النصوص البسيطة ، يعد GNU Nano هو الأكثر انتشارًا. في الواقع ، إنه نسخة من محرر pico ، لذلك إذا لم يكن أحدهما متاحًا على نظامك ، فيمكنك تجربة الآخر. بديل آخر أكثر حداثة لكليهما هو المحرر الصغير. إذا كنت تريد شيئًا بسيطًا وقابل للتوسيع في نفس الوقت ، فهذا مكان جيد للبدء.
برامج تحرير النصوص القابلة للبرمجة
يعتمد العديد من المطورين على محررين قابلين للبرمجة من معسكرات مختلفة ، مثل Vim و GNU Emacs. يمكن تشغيل كلا المحررين في وحدة التحكم أو في وضع واجهة المستخدم الرسومية ، وكلاهما له تأثير على روابط المفاتيح الموجودة في البرامج الأخرى. كلاهما لا يقدم فقط واجهة برمجة تطبيقات ولكن أيضًا لغات برمجة فعلية مدمجة. يركز Emacs على LISP ويستخدم Vim VimL الخاص به ، ولكنه يوفر أيضًا واجهات للغات البرمجة النصية الشائعة الأخرى (مثل Lua أو Perl أو Python أو Ruby). من الجدير بالذكر أيضًا مقاربة أحدث لـ Vim ، تسمى Neovim ، حيث بدأت في الحصول على متابعين جديين.
قد يكون الأمر محيرًا إلى حد ما ، ولكن هناك أيضًا محرر يسمى vi وهو من أسلاف Vim (والذي ، بالمناسبة ، يرمز إلى " Vi i m أثبت"). إنه أبسط بكثير من Vim ، ولكن إذا كان لديك ما يكفي من الثقة للكتابة في Vim ، فلا ينبغي أن يكون ذلك تحديًا لك إذا وجدت نفسك بحاجة إلى استخدام vi.
نظرًا لأن pico / GNU Nano و vi / Vim عادةً ما يتم تثبيتهما مسبقًا على أنظمة مختلفة ، فمن الجيد فهم أساسياتهما على الأقل (يعد الإقلاع عن Vim مشكلة صعبة للمبتدئين). بهذه الطريقة ، إذا كنت بحاجة إلى تعديل شيء ما على جهاز بعيد ، فستكون جاهزًا بغض النظر عن المحرر الموجود بالفعل. على جهازك الخاص ، لا تتردد في استخدام أي محرر تجده أكثر راحة.
محرر النظام الافتراضي
آخر شيء يجب ملاحظته هو أن نظامك قد يحتوي على ما يسمى بالمحرر الافتراضي .
يشير متغير البيئة $EDITOR
إلى المحرر الافتراضي وفي الأصداف المتوافقة مع Bourne (sh ، bash ، ksh ، zsh) يمكنك رؤيته عن طريق إدخال echo $EDITOR
. إذا كانت القيمة تختلف عن اختيارك الشخصي ، فيمكنك تعيينها بنفسك عن طريق إضافة export EDITOR=my-awesome-editor
إلى تكوين وقت تشغيل الصدفة ( ~/.profile
، ~./bashrc
، ~/.zshrc
، وما إلى ذلك).
ستستخدم البرامج الأخرى ، مثل أنظمة التحكم في الإصدار وعملاء البريد ، هذا المحرر عندما تحتاج إلى إدخال نص أطول.
معدد
بمجرد أن تبدأ في القيام بأشياء جادة في CLI ، ستواجه قيودًا على قدرتك على الاحتفاظ بتطبيق واحد فقط مفتوحًا في أي وقت. عند الترميز ، قد ترغب في تعديل الكود وتنفيذه وإصلاح الأخطاء والتنفيذ مرة أخرى. عند البحث عن خطأ ، قد ترغب في سرد السجلات ومعرفة ما يتم تسجيله عند إرسال طلب إلى الخادم. عادةً ما يعني ذلك التبديل بين التطبيقين باستمرار أو فتح العديد من النوافذ الطرفية.
هذا هو المكان الذي يمكن أن يساعدك فيه معدد الإرسال. عند الحديث عن مُضاعِفات الإرسال ، يفترض بعض الناس فورًا أن الموضوع هو شاشة GNU. كانت أول أداة منتشرة من نوعها ولا تزال تحظى بشعبية كبيرة حتى يومنا هذا (غالبًا ما يتم تثبيتها افتراضيًا). بديله الحديث هو tmux والذي ، مما لا يثير الدهشة ، يرمز إلى " t erminal mu ltiple x er."

هذان يسمحان لك بفتح أكثر من نافذة واحدة في جلسة طرفية معينة والتبديل بين تلك الجلسات بحرية. إنها تسمح لك بتقسيم النوافذ إلى أجزاء ، مما يساعد على تشغيل العديد من التطبيقات في نفس الوقت ومراقبة مخرجاتها في الوقت الفعلي (دون تبديل أي نوافذ). كما أنهم يعملون في وضع خادم العميل ، مما يعني أنه يمكنك فصلهم في أي وقت والعودة لاحقًا لمواصلة العمل من حيث توقفت. أدت هذه الميزة الأخيرة إلى شعبية Screen عندما أراد الناس جلسات IRC مستمرة.
بالنسبة لمعظم حالات الاستخدام ، يجب أن تكون شاشة GNU أو tmux رائعة بالنسبة لك ، ولكن إذا كنت لسبب ما تعتبرها ثقيلة جدًا على الموارد ، فهناك أيضًا بدائل أخف. هناك dtach / atach وهناك Abduco. وهي محدودة النطاق عن قصد ولكن يمكنها أداء واجباتها بشكل جيد.
مدير مجموعة
في هذه المرحلة ، قد تبدأ في التفكير في تثبيت جميع البرامج المذكورة أعلاه على جهازك. تتمثل إحدى المشكلات في أن لكل أداة تعليمات تثبيت مختلفة. في بعض الأحيان ، تحتاج إلى تنزيل المصادر وتجميعها بنفسك ، وأحيانًا تحصل على النظام الثنائي القائم بذاته ، وأحيانًا تحصل على ما يسمى بالحزمة الثنائية ، وهو ما يعني عادةً ملفًا تنفيذيًا مضغوطًا مع بعض البيانات الوصفية.
لتسهيل عملية تثبيت البرامج ، جاء منشئو أنظمة التشغيل بمفهوم مديري الحزم. ببساطة ، مدير الحزم يشبه متجر التطبيقات لتطبيقات CLI وتطبيقات سطح المكتب. يسبق متاجر التطبيقات الفعلية ببضعة عقود. تكمن المشكلة في أن كل نظام تقريبًا لديه مدير حزم خاص به. تستخدم توزيعات Debian و Ubuntu و GNU / Linux المشتقة APT ، وتفضل التوزيعات المستندة إلى Red Hat yum أو DNF ، بينما تمتلك توزيعات Linux الأخرى وسائل أكثر غرابة لتثبيت البرامج وكذلك نسخ BSD المختلفة. إلى جانب مديري الحزم المدمجين ، هناك أيضًا برامج مثبتة بواسطة المستخدم مثل Chocolatey لـ MS Windows و Homebrew لنظام التشغيل Mac OS X / macOS. عندما تريد كتابة تعليمات حول كيفية تثبيت برنامجك ، فقد ينتهي بك الأمر بكتابة حالات لكل نظام من هذه الأنظمة. يبدو كأنه كثيرًا جدًا ، أليس كذلك؟
لحسن الحظ ، قد يكون آخر الأنظمة المذكورة ، Homebrew ، هو أكثر الأنظمة المحمولة ، وذلك بفضل Linuxbrew ، وهو منفذ من Homebrew إلى أنظمة GNU / Linux. الشيء المضحك هو أنه يعمل حتى على WSL إذا كنت ترغب في الحصول على تجربة مستخدم مماثلة على Microsoft Windows. ضع في اعتبارك أن WSL غير مدعوم رسميًا.
لذا ، إلى جانب قابلية النقل ، ما الذي يمكن أن يقدمه Homebrew أيضًا؟ بادئ ذي بدء ، لا يتداخل مع حزم النظام ، لذلك كل ما تقوم بتثبيته موجود في طبقة منفصلة لنظام التشغيل. إلى جانب ذلك ، لا توجد عادةً حاجة إلى أذونات الجذر لتثبيت الحزم. لذلك ، يمكنك الحصول على حزم نظام مستقرة ومختبرة ولكن في نفس الوقت تحقق من إصداراتها الأحدث دون التضحية باستقرار النظام.
إذا كنت ترغب في اختبار المحررين ، فقد ذكرت سابقًا أن كل ما عليك فعله على نظام مع Homebrew أو Linuxbrew هو تشغيل هذا الأمر:
brew install emacs micro nano vim neovim
.
الاشياء اللامعة
ما ناقشناه بالفعل مفيد بلا شك للعمل. ولكن هناك أيضًا تطبيقات لا تزال توفر الراحة للحياة اليومية ، وإن لم تكن ضرورية. قد لا تحتاج إليهم ، لكن الأمر يستحق معرفتهم دائمًا.
مرشح تفاعلي
يمكن أن يكون البحث في محفوظات الأوامر مملاً. في حين أن كلاً من bash و zsh يتميزان بربط المفاتيح Ctrl + R ، إلا أنه يظهر استبدالًا واحدًا فقط في كل مرة. علاوة على ذلك ، تحتاج إلى إدخال النص الدقيق الذي استخدمته من قبل. نظرًا لأن هذه عملية شائعة جدًا ، بمجرد أن تبدأ في استخدام سطر الأوامر ، فإنها تبدو مكانًا جيدًا للتحسين.
تساعدك المرشحات التفاعلية ، مثل fzy أو percol أو peco أو fzf في تصفية الأسطر الطويلة من النص. يمكن أن يكون هذا إما محفوظات الأوامر المذكورة أعلاه ، أو جميع أسطر التعليمات البرمجية في دليل المشروع ، أو قائمة بأسماء الملفات التي تم إنشاؤها بواسطة find .
. الفكرة العامة هنا هي أن نقدم لك أولاً جميع الأسطر المتاحة ثم الاعتماد على خوارزميات البحث الغامض لتصفية كل ما لا يتطابق.
على سبيل المثال ، يُظهر لك ربط Ctrl + R بـ fzf قائمة بأحدث الأوامر ، والتي يمكنك التنقل فيها لأعلى ولأسفل باستخدام الأسهم ، أو يمكنك كتابة git
لإظهار الأوامر التي تتميز فقط بـ Git في مكان ما بالداخل. أنا شخصياً عندما أعمل مع غلاف لا يحتوي على مرشح تفاعلي ، أشعر فجأة بالضياع قليلاً. هذه الميزة مقنعة حقًا!
بالإضافة إلى ذلك ، يمكنك إتاحة الفلتر التفاعلي داخل محرر النصوص القابل للبرمجة. بهذه الطريقة ، سيكون لديك إمكانات بحث موحدة بين صدفتك ومحررك.
المستكشف التفاعلي
كان Facebook PathPicker مساعدة كبيرة عندما كنت أعمل في الغالب مع مشاريع C ++. يمكن أن يصبح سجل الأخطاء الذي تم إنشاؤه بواسطة المترجم كبيرًا جدًا وسيئًا جدًا ، وكانت القدرة على العثور على المسارات الفعلية داخل هذا السجل بمثابة نعمة إنتاجية.
في أي ملف نصي معين ، أو محتوى شاشتك عند استخدامه مع tmux ، تقوم fpp بتصفية كل شيء باستثناء مسارات الملفات. ثم يقدم واجهة مستخدم حيث يمكنك تحديد واحد أو أكثر من هذه المسارات وتشغيل أمر معهم. قد تكون الاستجابة الأكثر شيوعًا هي فتح الملفات في محرر ، بالطبع ، وهو الإجراء الافتراضي.
واجهة مستخدم Git
الاحتمالات هي على الأقل أحد المشاريع التي تعمل عليها يستخدم Git كنظام تحكم في الإصدار. على الرغم من كونه قويًا تمامًا ، فإن Git CLI ليس ذروة تجربة المستخدم الممتازة. لتوفير بعض الضغط عليك من خلال قراءة جميع الخيارات في Git help $SUBCOMMAND
، أوصيك بالتحقق من tig. إنه يوفر واجهة مستخدم وحدة تحكم لطيفة للعمليات التي تستفيد منها ، مثل log
أو blame
.
هناك أداة أخرى تهدف إلى مساعدة مستخدمي GIt وهي fac ، وهي اختصار لـ Fix All Conflicts . كما قد تكون خمنت ، يكون هذا مفيدًا عندما تواجه تعارضات أثناء إجراء عمليات الدمج أو إعادة التأسيس. إنه بديل لأدوات الدمج الأخرى مثل vimdiff.
مدير الملفات
كان هناك وقت في التسعينيات عندما أراد الجميع مدير ملفات من جزأين. بدأ الاتجاه مع Norton Commander. اتبع العديد من الآخرين نفس المسار ، ولكن الذي لا يزال يرى قاعدة مستخدمين مستقرة هو Midnight Commander. أكثر حالات الاستخدام وضوحًا هي استخدام mc لمعالجة الملفات المحلية ، ولكنها أيضًا مفيدة جدًا عند العمل مع الأجهزة البعيدة.
مثل معظم برامج سطر الأوامر ، فهو خفيف الوزن للغاية ، لذلك لا توجد مشكلة في تشغيله عبر ssh وبفضل دعم بروتوكولات FTP و FISH ، يمكنك الحصول على نظام ملفات محلي مرئي في جزء والآخر بعيد في الجزء الآخر - وهو أمر ملائم ميزة عندما تريد تجنب كتابة أسماء الملفات أو نسخها كوسائط لـ scp.
أدوات CLI للمتعة فقط
يقولون: "كل العمل وعدم اللعب يجعل جاك صبيًا مملًا" . هناك الكثير من البرامج وسطر الأوامر وغيرها ، التي تخدم فقط تسليةك. تندرج لعبة فيديو Rogue ضمن هذه الفئة. حتى أنها أعطت اسمًا لنوع الألعاب بأكمله! الألعاب الشعبية الأخرى هي الثروة والأبقار ، والتي يمكن أن تجعل يومك أقل مللًا إذا كنت تستخدمها في مكان ما في نصوص CI ، على سبيل المثال.
لكن بالنسبة للبعض منا ، فإن النداء الرئيسي لاستخدام وحدة التحكم في المقام الأول هو الشعور وكأنك متسلل في الأفلام. لا مزيد من الأسرار وهوليوود هاكر يمثلان هذه المجموعة جيدًا. جربها عندما يراقب شخص ما عملك ، ومن المؤكد أن رصيدك من المتسللين يرتفع!
سطر الأوامر في الممارسة
إذن ، ما هو الشيء الجذاب في سطر الأوامر الذي يعوض الساعات التي تقضيها في تعلم كيفية استخدام الصدفة والمحرر وجميع مفاتيح التطبيقات المختلفة؟ الإجابة المختصرة هي الإنتاجية التي تأتي من شيئين:
الأول هو أنه عندما يتم تقديمك مع نافذة طرفية فقط ولا شيء أكثر من ذلك ، يمكنك التركيز بشكل أكثر كثافة ، حيث لا يوجد الكثير لتشتت انتباهك. لا توجد إخطارات تظهر ، ولا إعلانات ، ولا صور لقطط جميلة. فقط أنت وهدفك.
الشيء الثاني هو الأتمتة. يمكنك وضع العديد من الإجراءات المدمجة بشكل متكرر في البرنامج النصي واستدعائها لاحقًا ككل بدلاً من كتابتها جميعًا يدويًا في كل مرة. يمكنك العودة بسرعة إلى أمر معقد بشكل خاص كتبته ذات مرة من خلال البحث في سجل قوقعتك. في الأساس ، يمكنك تسجيل أي شيء وإعادة تشغيله ، والرمز متاح كتوثيق لما فعلته.
تساهم القدرة على إضافة أسماء مستعارة أيضًا في تحقيق المكاسب. على سبيل المثال ، أجد نفسي غالبًا ما أقوم بصياغة الالتزامات في Git عن طريق تحديث نفس الالتزامات حتى تصبح مثالية (في الوقت الحالي). بمجرد أن أقوم بترتيب الملفات المطلوبة ، أقوم بتشغيل git carmh
. لا تحاول البحث عنه في الدليل ، لأنه الاسم المستعار الخاص بي يعني commit --amend --reuse-message=HEAD
. إنه يوفر بعض الكتابة بالتأكيد.
الشيء هو أن الناس يشعرون بالملل من تكرار نفس الإجراءات مرارًا وتكرارًا ، والملل يقلل من التركيز. هذا يمكن أن يؤدي إلى أخطاء وأخطاء. الطريقة الوحيدة لتجنبها هي عدم التشابك بين الإجراءات ذات التركيز العالي والمنخفض التركيز. كتابة التعليمات البرمجية عالية التركيز ومراجعة رسالة الالتزام والمحتويات عالية التركيز ، ولكن عندما تحتاج إلى تكرار عدة نقرات ميكانيكية هنا وهناك للوصول إلى مرحلة مراجعة الالتزام ، فمن المحتمل أن يتم تقليل تركيزك. إن سطر الأوامر ، بالطبع ، ليس خاليًا من مثل هذه الأنشطة الميكانيكية ، ولكن بفضل الأتمتة ، يمكنك تجنب معظمها.
مزيد من الاستكشافات
ربما تكون على دراية ببعض أو كل أدوات سطر الأوامر المذكورة في هذه المقالة. ربما تكون قد تعلمت شيئًا جديدًا ومفيدًا أثناء قراءته. إذا كان الأمر كذلك ، ممتاز - لم يكن هدفي هنا تقديم نظرة عامة شاملة ومقارنة للأدوات المختلفة ، ولكن إظهار بعض الأدوات المهمة التي وجدتها مفيدة في عملي اليومي ، على أمل أن تجد بعضها مفيدًا ، جدا.
هناك برامج سطر أوامر أكثر إثارة للاهتمام ، وإذا كنت مهتمًا بها ، فإنني أوصي بالتحقق من قائمة Awesome Shell المنسقة لبعض من أفضل أدوات سطر الأوامر المتاحة اليوم.
معظم تطبيقات واجهة المستخدم الرسومية لها نظيرتها الطرفية. يتضمن ذلك متصفحات الويب أو عملاء البريد الإلكتروني أو عملاء الدردشة (IRC أو Slack أو XMPP) أو مجموعات PIM أو جداول البيانات. إذا كنت تعرف أي برامج جيدة لم أذكرها ، يرجى طرحها في التعليقات.