ווי און פארוואס איר וואָלט נוצן דעם $ SHLVL וואַריאַבלע

די $ SHLVL בייַטעוודיק איז געניצט צו זאָגן איר ווי פילע שעלז טיף איר זענען. אויב איר זענען צעמישט דורך דעם עס איז ווערט סטאַרטינג אין די אָנהייב.

וואָס איז אַ שאָל?

א שאָל נעמט קאַמאַנדז און גיט זיי צו די אַנדערלייינג אַפּערייטינג סיסטעם צו דורכפירן. אויף רובֿ לינוקס סיסטעמען די שאָל פּראָגראַם איז גערופן BASH (די Bourne Again Shell) אָבער עס זענען אנדערע בנימצא אַרייַנגערעכנט די C שעל (טקש) און די קאָרי שאָל (קש).

ווי צו צוטריט די לינוקס שעל

בכלל ווי אַ באַניצער איר ינטעראַקט מיט די שאָל פּראָגראַם דורך די נוצן פון אַ טערמינאַל עמיאַליישאַן פּראָגראַם אַזאַ ווי קסטים, קאָנסאָלע אָדער שרעטל-וואָקזאַל.

אויב איר זענט אַ פֿענצטער פאַרוואַלטער אַזאַ ווי אָפּענבאָקס אָדער אַ דעסקטאַפּ סוויווע אַזאַ ווי GNOME אָדער KDE איר וועט געפֿינען אַ טערמינאַל עמולאַטאָר אָדער פון אַ מעניו אָדער אַ לאָך. אויף פילע סיסטעמס די דורכוועג קטרל אַלט און ה וועט עפענען אַ וואָקזאַל פֿענצטער ווי געזונט.

אַלטערנאַטיוועלי איר קענען באַשטימען צו אן אנדער טטי (טעלעטיפּעווריטער) וואָס גיט גלייַך צוטריט צו אַ באַפֿעל שורה שאָל. איר קענען טאָן דאָס דורך דרינגלעך קטרל אַלט און פ 1 אָדער קטרל אַלט און פ 2 עטק.

וואָס איז אַ שאָל גלייַך

ווען איר לויפן אַ באַפֿעל אין אַ שאָל עס לויפט בייַ עפּעס גערופן די שאָל גלייַך. ין אַ שאָל איר קענען עפענען אן אנדער שאָל וואָס מאכט עס אַ סובשעל אָדער די שאָל וואָס געעפנט עס.

דעריבער דער פאָטער שאָל וואָלט זיין געהאלטן טאָמער די מדרגה 1 שאָל און די קינד שאָל וואָלט זיין אַ מדרגה 2 שאָל.

ווי צו אַרויסווייַזן די שאָל מדרגה

עס זאָל זיין ווי קיין יבערראַשן באזירט אויף דעם טיטל פון דעם אַרטיקל אַז די וועג איר קענען זאָגן וואָס שאָל מדרגה איר זענען פליסנדיק אין איז דורך די $ SHLVL בייַטעוודיק.

צו זען די שאָל גלייַך אַז איר זענען איצט פליסנדיק אין די פאלגענדע:

echo $ SHLVL

אלא ינטערעסטינגלי אויב איר לויפן די אויבן באַפֿעל ין אַ וואָקזאַל פֿענצטער איר זאל זיין סאַפּרייזד צו זען אַז דער רעזולטאַט איז אומגעקערט 2.

אויב אָבער איר לויפן די זעלבע באַפֿעל ניצן די טטי דעמאָלט דער רעזולטאַט איז 1.

פארוואס איז דאָס דער פאַל איר זאל פרעגן? געזונט די דעסקטאַפּ סוויווע איר זענען פליסנדיק איז זייַענדיק לויפן אויף שפּיץ פון אַ שאָל. אַז שאָל וואָלט זיין גלייַך 1. קיין וואָקזאַל פֿענצטער וואָס איר עפענען אין דעם דעסקטאַפּ סוויווע האט צו זיין אַ קינד פון די שאָל וואָס געעפנט די דעסקטאַפּ סוויווע און דעריבער די שאָל מדרגה קען נישט אָנפאַנגען בייַ קיין נומער אנדערע ווי 2.

די טטי איז נישט פליסנדיק אַ דעסקטאַפּ סוויווע און איז דעריבער פשוט אַ מדרגה 1 שאָל.

ווי צו שאַפֿן סובסעללס

די יזיאַסט וועג צו פּרובירן דעם באַגריף פון שעלז און סובסעללס איז ווי גייט. עפענען אַרויף אַ וואָקזאַל פֿענצטער און טיפּ די פאלגענדע:

echo $ SHLVL

ווי מיר וויסן פון אַ וואָקזאַל פֿענצטער די מינימום שאָל מדרגה איז 2.

איצט אין די וואָקזאַל פֿענצטער די פאלגענדע:

sh

די ש באַפֿעלן אויף זייַן אייגן לויפט אַ ינטעראַקטיוו שאָל וואָס מיטל איר נוצן אַ שאָל אין אַ שאָל אָדער אַ סובשעלל.

אויב איר דרוקן דעם ווידער:

echo $ SHLVL

איר וועט זען אַז די שאָל מדרגה איז באַשטימט צו 3. פליסנדיק די ש באַפֿעל פון ין די סובסעלל וועט עפענען אַ סובשעלל פון די סובסעלל און אַזוי די שאָל מדרגה וועט זיין בייַ מדרגה 4.

פארוואס איז די שעל גלייַך וויכטיק?

די שאָל מדרגה איז וויכטיק ווען טראכטן וועגן דעם פאַרנעם פון וועריאַבאַלז ין דיין סקריפּס.

זאל ס אָנהייבן מיט עפּעס פּשוט:

הונט = מייז
echo $ dog

אויב איר לויפן די אויבן באַפֿעל אין אַ שאָל די וואָרט מייזיע וועט זיין געוויזן צו די וואָקזאַל פֿענצטער.

עפענען אַ נייַ שאָל דורך טייפּינג די פאלגענדע:

sh

אויב איר לויפן דעם באַפֿעל, איר וועט זען וואָס גאָרנישט איז אומגעקערט:

echo $ dog

דאָס איז ווייַל די $ הונט בייַטעוודיק איז בלויז בנימצא אין שאָל מדרגה 2. אויב איר טיפּ אַרויסגאַנג צו אַרויסגאַנג די סובסעלל און לויפן ווידער ווידער $ הונט ווידער די וואָרט מייזיע וועט זיין געוויזן ווידער.

עס איז אויך ווערט טראכטן וועגן די נאַטור פון גלאבאלע וועריאַבאַלז אין אַ שאָל.

אָנהייב אַוועק אין אַ נייַ וואָקזאַל פֿענצטער און טיפּ די פאלגענדע:

אַרויספירן הונט = מייז
echo $ dog

ווי איר וואָלט דערוואַרטן די וואָרט מאַיסיע איז געוויזן. איצט עפענען אַ סובסעלל און טיפּ ווידער ווידער $ הונט. דעם מאָל איר וועט זען אַז די וואָרט מייזיע איז געוויזן, אַפֿילו כאָטש איר זענט אין אַ סובשעלל.

די סיבה פֿאַר דעם איז אַז די אַרויספירן באַפֿעל האָט געמאכט די $ הונט בייַטעוודיק גלאבאלע. טשאַנגינג די $ הונט בייַטעוודיק אין די סובזעלל אפילו אויב איר נוצן די אַרויספירן באַפֿעל האט ניט ווירקן אויף זייַן פאָטער שעלז.

האָפּעפוללי פון דעם איר קענען זען אַז געוואוסט די שאָל מדרגה איר אַרבעט אין האט עטלעכע באַטייַט ווען שרייבן סקריפּס.

די ביישפילן איך האָבן געגעבן זענען זייער סימפּליסטיק אָבער עס איז גאַנץ פּראָסט פֿאַר איין שאָל שריפט צו רופן אן אנדער שאָל שריפט וואָס אין דרייַ רופט אן אנדער שאָל שריפט אַלע פון ​​זיי איצט פליסנדיק אין פאַרשידענע לעוועלס. ווייל די שאָל גלייַך קענען זיין זייער וויכטיק.