Користећи променљиве аргумента:
Аргумент променљива почиње од 0 УСД. Име датотеке главног скрипта је ускладиштено у $ 0 које прима вредности аргумената из аргумената командне линије. Ако се у командној линији проследе два аргумента, вредности аргумената ће се примати у променљивима $ 1 и $ 2 секвенцијално.
Пример -1: Слање три нумеричке вредности као аргумената
Направите басх датотеку и додајте следећи код. Скрипта ће примити три вредности аргумента и сместити је у $ 1, $ 2 и $ 3. Бројат ће укупан број аргумената, исписивати вриједности аргумената са петљом и без петље. На крају, одштампајте збир свих вредности аргумената.
#!/бин/басх
# Бројање укупног броја аргумената
Избацио „Укупан број аргумената: $#“
# Појединачно читање вредности аргумената
Избацио 'Вредност првог аргумента: $ 1'
Избацио „Вредност другог аргумента: 2 УСД“
Избацио „Вредност трећег аргумента: 3 УСД“
# Читање вредности аргумената помоћу петље
зааргвалу '[заштићена е -пошта]'
урадити
Избацио -н '$ аргвал'
Готово
# Додавање вредности аргумената
збир= $((1 УСД+2 УСД+3 УСД))
# одштампајте резултат
Избацио -И ' нРезултат збира =$ сум'
Покрените басх датотеку са три нумеричке вредности аргумента.
$басхцмдлине1.схпедесет 35 петнаест
Пример -2: Узимање имена датотеке као аргумента
Направите басх датотеку и додајте следећи код да бисте пребројали укупан број знакова било које датотеке. Овде ће се име датотеке проследити као аргумент командне линије.
#!/бин/басхназив документа=1 УСД
тоталцхар=``Тоалет -ц $ назив датотеке``
Избацио 'Укупан број знакова је$ тоталцхар'
Покрените басх скрипту са именом датотеке као вредност једног аргумента и покрените другу наредбу да проверите укупан број знакова те датотеке. Овде се датотека запосленика.ткт користи као вредност аргумента. Укупан број знакова датотеке запослених.ткт је 204.
$басхцмдлине2.сх запослени.ткт
$Тоалет -цзапослени.ткт
Коришћење функције гетоптс:
Ако желите да сачувате податке у бази података или било којој датотеци или направите извештај о одређеном формату на основу вредности аргумената командне линије, онда гетоптс функција је најбоља опција за обављање задатка. То је уграђена линук функција. Дакле, можете лако користити ову функцију у скрипти за читање форматираних података из командне линије.
Пример -1: Читање аргумената помоћу функције гетоптс
Направите басх датотеку и додајте следећу скрипту да бисте разумели употребу гетоптс функција. „Гетоптс“ функција се користи са вхиле петљом за читање опција аргумената командне линије и вредности аргумената. Овде се користе 4 опције које су „И“, „н“, „м“ и 'И' . Наредба цасе се користи за подударање са одређеном опцијом и чување вредности аргумента у променљивој. На крају одштампајте вредности променљиве.
#!/бин/басхдок гетоптс ':у мени:'љут;урадити
случају $ арг у
и) ИД=$ ОПТАРГ;;
н) Име=$ ОПТАРГ;;
м) Датум производње=$ ОПТАРГ;;
И) Истиче=$ ОПТАРГ;;
есац
Готово
Избацио -И ' н$ ИД $ Наме $ Мануфацтуринг_дате $ Екпире_дате н'
Покрените датотеку са следећим опцијама и вредностима аргумената. Овде је п100 вредност -и опције, 'Хот Цаке' је вредност -н опције, '01 -01-2018 ′ је вредност -м опције и '06 -01-2018 'је вредност - е опцију.
$басхцмдлине3.сх-ип001-н „Топли колач“ -м '01 -01-2018 ' -И '06 -01-2018 '
Када требате послати једноставне вриједности у скрипти, боље је користити варијабле аргумената. Али ако желите да шаљете податке на форматиран начин, боље је користити функцију гетоптс за преузимање вредности аргумената. За више информација погледајте Видео !