ווי צו פאָרן אַרגומענטן צו אַ באַש-סקריפּט

קאַמאַנדז, סינטאַקס און ביישפילן

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

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

sh stats.sh סאָנגליסט

אַרגומענטן זענען אַקסעסט ין אַ שריפט ניצן די וועריאַבאַלז $ 1, $ 2, $ 3, אאז"וו, ווו $ 1 איז די ערשטער אַרגומענט, $ 2 צו די צווייטע אַרגומענט, און אַזוי אויף. דעם איז ילאַסטרייטיד אין די פאלגענדע בייַשפּיל:

טעקע 1 = $ 1 ווק $ טעקע 1

פֿאַר לייענען, באַשטימען אַ בייַטעוודיק מיט אַ דיסקריפּטיוו נאָמען צו די ווערט פון די ערשטער אַרגומענט ($ 1), און דעמאָלט רופן די וואָרט ציילן נוצן ( ווק ) אויף דעם בייַטעוודיק ($ טעקע 1).

אויב איר האָבן אַ בייַטעוודיק נומער פון טענות, איר קענען נוצן די "$ @" בייַטעוודיק, וואָס איז אַ מענגע פון ​​אַלע די אַרייַנשרייַב פּאַראַמעטערס. דעם מיטל איר קענען נוצן אַ פֿאַר-שלייף צו יטעראַטעלי פּראָצעס יעדער איינער, ווי ילאַסטרייטיד אין די פאלגענדע בייַשפּיל:

פֿאַר FILE1 אין "$ @" טאָן ווק $ FILE1 געטאן

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

ש סטאַלעס 1 songlist2 songlist3

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

sh stats.sh 'ליד ליסט 1' 'ליד ליסט 2' 'ליד ליסט 3'

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

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

פאַבריקאַנט-אין דזשסמיטה-ן נאָוטבוקס -ד 10-20-2011-ף פּדף

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

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

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

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

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