האם אי פעם ניסית להריץ פקודה ב־Bash וקיבלת שגיאה בגלל מילה שכתבת בצורה שגויה? או אולי שכחת מהן הפקודות האחרונות שהרצת? במקום לכתוב מחדש או לזכור פקודות קודמות, פקודת fc
ב־Bash יכולה לעזור לך לערוך במהירות ולהריץ מחדש פקודות קודמות.
במאמר זה, תלמד איך להשתמש ב־fc
כדי לערוך ולהריץ מחדש פקודות מההיסטוריה שלך. לאחר קריאת המדריך הזה, תהיה מיוצר בכיסא הקרב עם fc
!
דרישות מוקדמות
מאמר זה יהיה מדריך. אם אתה מתכוון לבצע את השלבים שלו בצורה שלב אחרי שלב, תצטרך להשתמש במחשב עם לינוקס או מחשב Windows 10 עם Windows Subsystem for Linux (WSL) מופעל. במדריך זה נעשה שימוש ב־Ubuntu 20.04 LTS.
אודות פקודת fc
ב־Bash
fc
היא לא אפליקציה של לינוקס אלא יוניליטי מובנה ב־Bash. Bash זמין ברוב ההפצות המרכזיות של לינוקס. בעזרת מספר מקשים, פקודת fc
ב־Bash מאפשרת לך לרשום, לערוך או להריץ מחדש פקודות קודמות.
הפקודה
fc
זמינה גם בזד של (ZSH). אבל הדוגמה במאמר זה תשתמש בfc
בBash.
האם הרצת פקודה ארוכה שהתברר שהיא שגויה? fc
תחסוך ממך את הצורך להקליד מחדש את כל הפקודה. במקום זאת, fc
מאפשרת לך לערוך את הפקודה באמצעות עורך הטקסט של בחירתך. לאחר שמירת העריכות שלך, הפקודה(ות) המעודכנת(ות) תבוצע אוטומטית!
מוכן לנסות את fc
? בואו נצלול פנימה!
רישום פקודות קודמות
האם עזבת את המחשב שלך, חזרת, ושכחת איזו פקודה הרצת לאחרונה? או שאולי אתה לא זוכר אם ביצעת מספר פקודות בסדר הנכון. מה עושים? רגע, fc
תעזור לך לזכור. הנה איך.
1. פתח טרמינל Bash במחשב שלך.
2. כדי שfc
תוכל להיות מועילה, חייבת להיות לה היסטוריה כלשהי של פקודות עם הם יכולה לעבוד. מאחר שפתחת חלון טרמינל חדש, ייתכן שעדיין אין היסטוריה של פקודות. כדי לבנות היסטוריה של פקודות לניסוי, העתק כל פקודה מלמטה והרץ אותה בטרמינל שלך. פקודות אלו אינן פולשניות, ואתה לא מסכן את המחשב שלך.
3. לְהַפְעִיל אֶת כָּל הַפְּקוּדוֹת בְּהִיסְטוֹרְיָה עַל יְדֵי הַפְעָלַת הַפְּקוּדָה לְמַטָּה. אֶפְשַׁרְתִּיים הַא־-l
מַדְרִיך לַfc
לְרַשֵּׁם רַק אֶת כָּל הַפְּקוּדוֹת הַקְּודָמוֹת וְלֹא לְהַרְצוֹת אוֹתָם.
כְּפִי שֶׁתּוּכַל לִרְאוֹת לְמַטָּה, הַפְּקוּדָה fc
הִצִּיגָה אֶת כָּל אַרְבָּע הַפְּקוּדוֹת שֶׁהֶחֱרַטְתָּ מִקֹּדֶם. הַמִּסְפָּרִים בַּצִּד הַשְּׂמֹאל מַצְיִינִים אֶת סְדֵר בִּיצוּעַ כָּל פְּקוּדָה.

עֲרִיכָה וּבִיצוּעַ מַחֲדָש שֶׁל הַפְּקוּדָה הַאַחֲרוֹנָה
דַּמֵיינוּ מַצְבֵּיעַ שֶׁאַתָּה מְתַקֵּין אַפְלִיקָצִיָה, וְעָשִׂיתָ שְׁגִיאַת כְּתִיבָה. כְּתוֹצֶאָה, הַפְּקוּדָה נִכְשְׁלָה. בְּמָקוֹם לְהַקִּישׁ מֵחָדָש אֶת כָּל הַפְּקוּדָה, לָמָּה לֹא לַעֲרוֹךְ אֶת הַפְּקוּדָה וּלְבַצֵּעַ מַחֲדָש באופן אוֹטוֹמָטִי? כְּדי לַעֲשׂוֹת זֹאת, עֲקוֹר אֶת הַפְּקוּדוֹת הַבָּאוֹת.
1. שִׁים דְּמוּי לְהַתְקִין אַפְלִיקָצִיָה שֶׁלא קַיֶּימֶת עַל יְדֵי הַפְעָלַת הַפְּקוּדָה לְמַטָּה בְּטֶרְמִינָל שֶׁלָּךְ. שִׁים לֵב שֶׁתַּכְּתִיב בְּכְוִין שֶׁלֹּא לְהַכְתִּיב נָכוֹן אֶת שֵׁם הַאַפְלִיקָצִיָה caffiene
.
כְּתוֹצֶאָה, הַנְּיסַיָּה לְהַתְקִין נִכְשְׁלָה. תִּקְבָּל הוֹדָעָה דוֹמָה לַזֹּאת שֶׁמִּתְפַּרֵשׁ לְמַטָּה.

2. כְּדי לְתַקֵן אֶת הַפְּקוּדָה הָאַחֲרוֹנָה שֶׁבָּיצָעְתָּ, הַפְּעִיל אֶת הַפְּקוּדָה לְמַטָּה בַּטֶרְמִינָל. בְּעָשֹוֹת כֵּן תִּפְתַּח אֶת תַּיבַת הַהִיסְטוֹרְיָה שֶׁל הַפְּקוּדוֹת בְּעוֹרֵךְ הַטֵקְסְט הָרָגִיל. בְּדִיֻפּוֹ לְדַעְתִּי, הָעוֹרֵךְ הַטֵקְסְט הָרָגִיל הוּא nano.
הַתַּצְלֵם לְמַטָּה מַרְאֶה אֶת הַפְּקוּדָה הָאַחֲרוֹנָה בְּתוֹךְ עוֹרֵךְ הַטֵקְסְט nano.

אם נאנו אינו העורך המועדף עליך, תוכל להורות ל־
fc
להשתמש בעורך אחר, כמו למשל vi. כדי לעשות זאת, כלול את האפשרות-e
ואחריה שם העורך הטקסט. לדוגמה,fc -e vi
יפתח את ההיסטוריה של הפקודות בעורך הטקסט vi.
3. כאשר אתה בעורך הטקסט נאנו, תקן את שמו של היישום מcaffiene
ל־caffeine
.
4. לאחר שתתקן את שמו של היישום, לחץ על CTRL+X
כדי לצאת מנאנו.
5. בהודעה הבאה שתשאל אותך "לשמור את השינויים?" , לחץ על Y
—> Enter
כדי לשמור את השינויים.

מייד לאחר יציאה מהעורך הטקסט, fc
מבצע אוטומטית את הפקודה שערכת.

עריכה וביצוע מחדש של פקודה קודמת
עם fc
, לא רק תוכל לערוך את הפקודה האחרונה שהרצת, אלא גם תוכל לערוך כל אחת מהפקודות הקודמות שביצעת. לדוגמה, כדי לערוך את הפקודה echo 'working on the command line with fc'
, עקוב אחר השלבים הבאים.
1. הצג את הפקודה הקודמת בטרמינל על ידי הרצת הפקודה הבאה.
2. מצא את הפקודה שברצונך לערוך מרשימת ההיסטוריה של הפקודות וציין את המספר שלה בצד שמאל שלה. בדוגמה זו, מספר הפקודה הוא 2.

3. כדי לערוך את הפקודה עם מספר הכניסה 2, הרץ את הפקודה הבאה בטרמינל. הפקודה תיפתח בעורך הטקסט לעריכה.
4. פעם שנמצאים בעורך הטקסט, יש לערוך את הפקודה כפי שנדרש.
5. לאחר עריכת הפקודה, לחץ על CTRL+X
כדי לצאת מננו.
6. בעת הבקשה הבאה שמבצעת סגירה של הטקסט, האם לשמור את השינויים?, לחץ על Y
—> Enter
כדי לשמור את השינויים.

לאחר שמירת הפקודה ויציאה מעורך הטקסט, הפקודה שערכת נפתחת אוטומטית בסדר.
עריכת וביצוע מחדש של מספר פקודות
אם אתה חושב ש-fc
יכול לערוך ולבצע רק פקודה קודמת בכל פעם, אז אתה בטעות. למה? fc
מאפשר לך לערוך גם מספר פקודות קודמות! איך עריכת מספר פקודות קודמות יכולה להיות שימושית? למשל, תוכל לשנות את סדר ביצוע הפקודות.
נניח שאתה רוצה לערוך את מספרי הפקודות הקודמות 2 עד 7. כדי לעשות זאת, עקוב אחרי הוראות אלו.
1. הפעל את הפקודה הבאה בטרמינל שלך ולחץ על Enter. הפקודה מתרגמת ל-fc <space> 2 <space> 7
, שפותחת את הפקודות 2 עד 7 לעריכה.
2. לאחר מכן, ערוך את הפקודות כפי שנדרש. לדוגמה:
- מחק את הפקודה
sudo apt install caffiene -y
. - החלף את הסדר של
uname -a
ו-ps aux
. - מחק את
clear
.

3. לאחר עריכת הפקודות, לחץ על CTRL+X
כדי לצאת מננו.
4. בבקשה לשמור את השינויים, לחץ על Save modified buffer?, ואז על Y
—> Enter
כדי לשמור את השינויים.
הפקודות שערכת יתבצעו אוטומטית לאחר יציאה מעורך הטקסט.

ביצוע של פקודה קודמת מבלי לערוך
נניח שרוצים לבצע רק פקודה קודמת מבלי לערוך אותה קודם. fc
מציעה אפשרות לכך. עקוב אחר השלבים הבאים כדי לבצע פקודה קודמת מהיסטוריית הפקודות.
- רשימת הפקודות הקודמות יופיע במסך על ידי הרצת הפקודה הבאה.
2. מתוך רשימת ההיסטוריה של הפקודות, מצא את הפקודה שברצונך להריץ שוב ושים לב למספר השמאלי שלה. בדוגמה זו, מספר הפקודה הוא 2.

3. כדי לבצע את הפקודה הקודמת הספציפית, הרץ את הפקודה הבאה בשול. אפשרות -s
מציינת ל־fc
לדלג על עריכה ולהמשיך לבצע את הפקודה מספר 2.
התמונה למטה מראה ש־fc ביצעה את הפקודה מספר 2 מההיסטוריה של הפקודות.

מסקנה
מאמר זה התמקד בקידום העניין שלך בפקודה שימושית אך לעיתים נתפסת ושכוחה הנקראת fc
. למדת כיצד להשתמש ב־fc
כדי למנוע מחדש קליטת פקודות שכבר בוצעו, מה שיכול להיות מבליג זמן.
עם הידע שיש לך כעת על fc
, האם זה משהו שתשתמש בו? או שתעדיף עדיין להקליד מחדש פקודות בשול? קח בחשבון בחירה מושכלת!