Jannah Theme License is not validated, Go to the theme options page to validate the license, You need a single license for each domain name.

أفضل الطرق لتشغيل التطبيقات مباشرة من Terminal

4 طرق فعالة لتشغيل التطبيقات من Terminal

استخدام Terminal لتشغيل التطبيقات يوفر سرعة وتحكماً أكبر مقارنة بالطرق التقليدية عبر القوائم أو الاختصارات. بمجرد معرفة الأوامر الصحيحة، يمكنك فتح أي برنامج مباشرة دون الحاجة للتنقل بين النوافذ أو البحث في شريط المهام. هذه الميزة تمنحك مرونة أكبر وتختصر الكثير من الوقت، خاصة إذا كنت تعتمد على أكثر من تطبيق في عملك اليومي.

linux-mascot-terminal-multiplexer أفضل الطرق لتشغيل التطبيقات مباشرة من Terminal

ربما شغّلتَ تطبيقًا من نافذة الطرفية في وقتٍ ما، ولكن هل لاحظتَ أنه يُبقي نافذة الطرفية مشغولة حتى تُغلقها؟ قد يكون هذا مُزعجًا للغاية. مع ذلك، من المُفيد أحيانًا تشغيل التطبيقات بهذه الطريقة – سأشرح كيف أفعل ذلك بفعالية.

يستخدم بعض الأشخاص القوائم، بينما يستخدم آخرون مُشغّلات التطبيقات – أنا شخصيًا أُشغّل جميع التطبيقات، مثل فايرفوكس، من نافذة الطرفية. تعود هذه العادة إلى أيامي الأولى في استخدام لينكس (قبل حوالي 15 عامًا)، عندما لم أكن أعرف كيفية إنشاء اختصارات. مع مرور الوقت، اعتدتُ على تشغيل التطبيقات بهذه الطريقة، ولأن نافذة الطرفية مفتوحة دائمًا، فإن الأمر يبدو منطقيًا. بالإضافة إلى ذلك، أنا كسول جدًا لإعداد مُشغّل التطبيقات وصيانته. باستخدام نافذة الطرفية، يُمكنني البحث بشكل مُبهم في تطبيقاتي مثل مُشغّل التطبيقات، ولكن مع ميزة إضافية وهي تعديل الأوامر قبل تشغيلها.

أولًا، فهم Nohup وعامل الخلفية

عند فتح تطبيق من نافذة الطرفية ثم إغلاقها، غالبًا ما يُغلق التطبيق أيضًا – وهو ما قد لا تُريده. في Linux، عندما يبدأ أحد التطبيقات تطبيقًا آخر، فإنه يتفرع من العملية، وبالتالي يصبح التطبيق الأصلي هو التطبيق الرئيسي.

terminal-window-showing-a-hierarchical-tree-of-parent-and-child-processes أفضل الطرق لتشغيل التطبيقات مباشرة من Terminal

عند إنهاء العملية الرئيسية، عادةً ما تُغلق جميع عملياتها الفرعية. يمكنك تجربة ذلك بنفسك: اكتب الأمر التالي في نافذة الأوامر، وانتظر حتى تبدأ العملية، ثم أغلق نافذة الأوامر.

firefox

للحفاظ على استمرارية عمل العمليات الفرعية بعد إغلاق الطرفية، سنستخدم أداةً مجرّبةً تُسمى nohup.

Nohup

يُجبر أمر nohup العملية على تجاهل إشارة إنهاء المكالمة (SIGHUP)، مما يسمح لها بمواصلة العمل حتى بعد تسجيل خروج المستخدم أو انتهاء جلسة الطرفية.

اقرأ أيضا:  كيفية تحرير GRUB مع تخصيص GRUB على Linux

بعد أن أصبح لدينا الآن طريقةٌ للحفاظ على استمرارية عمل العملية بعد إغلاق الطرفية، تجدر الإشارة إلى أن nohup سيكتب المخرجات تلقائيًا في ملف nohup.out في المجلد الحالي. ما لم تكن ترغب في توزيع هذه الملفات في نظام الملفات، فستحتاج إلى معالجة هذا السلوك. يمكنك إما تجاهل جميع المخرجات أو إعادة توجيهها إلى ملف مُحدد للتسجيل.

لتجاهل جميع المخرجات، ببساطة أعد توجيهها إلى /dev/null، الذي يعمل بمثابة ثقب أسود للبيانات غير المرغوب فيها:

nohup firefox &>/dev/null

الآن، إذا أغلقت الطرفية، سيستمر فايرفوكس في العمل. مع ذلك، يُرسل هذا الإعداد جميع السجلات إلى الفراغ. بدلاً من ذلك، يمكنك إعادة توجيه المخرجات إلى ملف سجل:

nohup firefox &>/tmp/firefox.log

الآن، إذا كانت هناك مشكلة في فايرفوكس، يمكنك قراءة ملف السجل.

عامل الخلفية

عند تشغيل Nohup مع فايرفوكس، فإنه يتولى سطر الأوامر، مما يعني أنه لا يمكنك تشغيل أوامر أخرى. هذا ليس الحل الأمثل إذا كنت ترغب في استخدام نفس نافذة الأوامر لأشياء أخرى. وهنا يأتي دور عامل الخلفية.

عامل الخلفية هو ببساطة علامة “و” توضع في نهاية الأمر، مما يسمح لك بمواصلة استخدام نافذة الأوامر أثناء تشغيل التطبيق. جرّبه:

firefox &

إذا أغلقت نافذة الطرفية الآن، ستلاحظ أنها تُغلق التطبيق أيضًا. هذا لأنه، بينما يضع مُشغّل الخلفية تطبيقك في الخلفية، فإنه لا يزال يُطيع إشارة SIGHUP، لذا فإن إغلاق نافذة الطرفية يُوقف العملية. لهذا السبب نستخدم Nohup أيضًا.

من الميزات المفيدة لعامل الخلفية إمكانية إعادة عملية إلى المقدمة. بعد إرسال Firefox إلى الخلفية، اكتب fg لإعادتها إلى المقدمة مرة أخرى.

استخدام Nohup مع عامل الخلفية

باستخدام Nohup مع عامل الخلفية، يعمل تطبيقك بالكامل في الخلفية، مما يُتيح لك مواصلة العمل في نافذة الطرفية أو حتى إغلاقها، وستستمر عمليتك في العمل دون انقطاع.

nohup firefox &>/tmp/firefox.log &

استخدم أسماءً مستعارةً سهلة الحفظ

يعمل اسم shell المستعار كاسمٍ مستعارٍ للأوامر. على سبيل المثال، يمكنك تعيين الحرف f لتشغيل فايرفوكس، ما عليك سوى كتابة f في الطرفية لفتحه. إذا كنت جديدًا على هذا، فننصحك بقراءة منشورنا حول كيفية إنشاء أسماء shell المستعارة.

اقرأ أيضا:  تشغيل كل البرامج المهمة على Linux باستخدام هذه الحلول العملية

في عالم تخصيص shell، من الشائع استخدام أسماء مستعارة سهلة الحفظ – وهي مجموعات قصيرة وسهلة الحفظ من الأحرف تمثل أوامر أطول. على سبيل المثال، يمكنك إنشاء اختصارات فايرفوكس لتشغيل المتصفح باستخدام وسيطات محددة:

alias ffaa="firefox about:about"
alias ffac="firefox about:config"
alias ffnt="firefox --new-tab"
alias ffp="firefox --profile"
alias ffsm="firefox --safe-mode"

بترتيب الأسماء المستعارة أبجديًا، يسهل عليك معرفة الأسماء المستعارة المستخدمة بالفعل.

ملاحظة
قد تحتاج إلى استخدام Nohup وعامل الخلفية لتشغيل فايرفوكس.

استخدم سجلّ الواجهات الضبابية

أكثر أدوات الواجهات فائدةً التي ستثبّتها على الإطلاق هي أداة السجلّ الضبابي. Atuin تطبيقٌ يقوم بذلك تمامًا، ويعمل في أي مكان. أنا شخصيًا أستخدم zsh-fzf-history-search، وهو إضافة Zsh، لكنّهما متطابقان تقريبًا.

a-terminal-window-displays-a-list-of-commands-this-is-the-output-of-the-fzf-history-search-command أفضل الطرق لتشغيل التطبيقات مباشرة من Terminal

إذا كنت تقضي وقتًا طويلًا في كتابة أمر طويل، فمن المنطقي أن يكون لديك طريقة سريعة لتنفيذه مرة أخرى. غالبًا ما أقضي دقيقة أو دقيقتين في إنشاء أمر معقد، ثم أستخدم سجلّ الشل الضبابي لتشغيله مئات المرات على مدار أشهر أو حتى سنوات.

إذا استفدت شيئًا واحدًا فقط: استخدم إضافة أو تطبيقًا لسجلّ الشل الضبابي. أنصحك باستخدام Atuin. إذا كنت مهتمًا، فلدينا مقدمة عن Atuin.

ملف أوامر مسطح

الفكرة وراء سجلّ الشل الضبابي بسيطة: فهو يجمع سجلّ الشل، ويزيل بعض التفاصيل غير الضرورية، ويرسل النتيجة إلى برنامج يُسمى FZF. سنفعل شيئًا مشابهًا، باستثناء أننا سنستخدم FZF لاختيار أوامرنا من ملف نصي عادي لنتمكن من تنفيذها.

صُمّم FZF لمساعدتك على تحديد العناصر بسرعة من قوائم طويلة. إنها أداة أساسية وجزء من أي مجموعة أدوات شل متقدمة، وإذا كنت ترغب في تحسين مهاراتك في استخدام الطرفية، فإنني أوصي بشدة بتعلم كيفية استخدامها. FZF سهل الاستخدام، ويتضمن العديد من الميزات المتقدمة للمستخدمين الأكثر خبرة.

اقرأ أيضا:  كيف تنتقل من موجه الأوامر في Windows إلى Terminal في Linux بسهولة

فيما يلي مثال بسيط يوضح كيفية استخدام FZF للبحث عبر أسطر نصية متعددة:

echo "foo\nbar" | fzf

terminal-window-running-fzf-displaying-a-list-of-two-options-foo-and-bar أفضل الطرق لتشغيل التطبيقات مباشرة من Terminal

عند بدء الكتابة، يُضيّق FZF نطاق القائمة ديناميكيًا، ويُحدّث الخيارات آنيًا. بمجرد اختيارك، يطبع FZF الإدخال الذي اخترته. يُحيل معظم المستخدمين هذا الاختيار إلى أمر آخر لمزيد من المعالجة. على سبيل المثال، باستخدام echo “foo\nbar” | fzf | tr ‘[:lower:]’ ‘[:upper:]’، تُحوّل الكلمة المحددة إلى أحرف كبيرة.

الآن، نريد إنشاء قائمة أوامر خاصة بنا والبحث فيها. أولًا، أنشئ ملفًا يحتوي على الأوامر:

echo "ls -al\ndir" > ~/.commands

ثم أضف الدالة التالية إلى ملف .bashrc. إذا كنت لا تعرف ما هي، فلدينا مقال يشرح ماهية ملف .bashrc:

fe() {
  eval "$(fzf <"${HOME}/.commands" || return)"
}

أعد تحميل ملف shell الخاص بك باستخدام ~/.bashrc المصدر، وشغّل fe (تنفيذ ضبابي). عند تحديد أمر، يُنفَّذ تلقائيًا. يمكنك إضافة أي أوامر إلى ملف ~/.commands النصي.

إذا كنت تستخدم Zsh، يمكنك تعديل الأوامر قبل تنفيذها. في ملف .zshrc، اكتب:

fe() {
  print -z "$(fzf <"${HOME}/.commands" || return)"
}

عند تشغيل هذا الأمر، سيظهر سطر الأوامر أولاً، ويمكنك تعديله أو ببساطة الضغط على زر الإدخال لتشغيله.

الآن وقد تعرفت على كيفية إرسال الأوامر إلى الخلفية بالكامل، يمكنك تشغيل التطبيقات بأمان من الطرفية دون ازدحام مساحة عملك بنوافذ طرفية متعددة. يمكنك إضافة هذه الأوامر – إلى جانب أمر Nohup وعامل الخلفية – إلى ملف الأوامر أو سجل shell لتشغيل التطبيقات بسرعة. بالنسبة للأوامر ذات المعلمات المعقدة، تُعد الأسماء المستعارة مفيدة.

أستخدم جميع هذه المبادئ لتشغيل التطبيقات بسرعة من الطرفية. مع أن مشغلات مخصصة تُعد حلاً أفضل بكثير، إلا أنك قد ترغب أحيانًا في تشغيل شيء ما مباشرةً في الطرفية للراحة. الآن أصبح الأمر أسهل من أي وقت مضى.

إتقان أوامر Terminal لتشغيل التطبيقات يضيف مستوى جديداً من السرعة والاحترافية إلى تجربتك مع الحاسوب. سواء كنت مستخدماً عادياً أو مطوراً، فإن الاعتماد على هذه الطريقة يعزز كفاءتك اليومية ويمنحك تحكماً أكبر في بيئة عملك الرقمية.

زر الذهاب إلى الأعلى