[ BASH ½© ] ¿¡·¯ ¹ß»ý

   Á¶È¸ 3006   Ãßõ 0    

하기와 같이 실행하였는데, 에러가 발생하고 있습니다.

간단한 쉘 같은데, 에러가 발생하는 이유가 파악이 안되고 있습니다.

DEBIAN 및 Mac OS X에서도 동일한 현상이 발생합니다.

아시는 분의 고견 부탁 드려 봅니다.


#> wget http://216.165.129.135/distfiles/prettyping-1.0.1.tar.gz

#> tar xzvf prettyping-1.0.1.tar.gz

#> cd prettyping-1.0.1

#> chmod +x prettyping


#> ./prettyping

./prettyping: line 162: syntax error near unexpected token `"$1"'

./prettyping: line 162: `                PING_PARAMS+=("$1")'



#> vi prettyping

...

      #TODO: Check if these parameters are numbers.

      -last    | --last    ) LAST_N="$2"           ; shift ;;

      -columns | --columns ) OVERRIDE_COLUMNS="$2" ; shift ;;

      -lines   | --lines   ) OVERRIDE_LINES="$2"   ; shift ;;

      -rttmin  | --rttmin  ) RTT_MIN="$2"          ; shift ;;

      -rttmax  | --rttmax  ) RTT_MAX="$2"          ; shift ;;


      * )

        PING_PARAMS+=("$1")                                      <======================== !!!

        ;;

    esac

    shift






ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
È­¶õ 2019-05
PING_PARAMS+=("$1")

ÀÌ ºÎºÐÀÌ ¾öÇÑ ¿É¼ÇÀ» ³Ö¾úÀ¸´Ï ´Ù½Ã³Ö¾î¶ó´Â ¸ñÀûÀΰ¡¿ä ?

exit ·Î ¹Ù²Ù°í ¾öÇÑ ¿É¼Ç ³Ö¾úÀ»¶§ Á¾·áµÇ¸é ¹®¹ý¿À·ù ¾Æ´Ñ°¡¿ä ?
¹«¾Æ 2019-05
ÇÁ·Î±×·¥ ½ÇÇà½Ã ±× µÚ¿¡ ÆĶó¹ÌÅ͸¦ ´õ ³Ö¾î¾ß ÇÏ´Â °Å ¾Æ´Ñ°¡¿ä?
     
½ÇÁ¦ °ªÀ» ³Ö¾îµµ µ¿ÀÏÇÑ ¿¡·¯°¡ ¹ß»ýÇÕ´Ï´Ù.

#> ./prettyping 1.1.1.1
./prettyping 1.1.1.1
./prettyping: line 162: syntax error near unexpected token `"$1"'
./prettyping: line 162: ` PING_PARAMS+=("$1")'
pil4 2019-05
archlinux¿¡¼­ ´Ù¿î¹Þ¾Æ¼­ Çغôµ¥ ½ÇÇà Àߵ˴ϴÙ. ¹º°¡ ´Ù¸¥ ¹®Á¦Àεí ÇÕ´Ï´Ù.
online9 2019-05
Oracle Linux 7.6¿¡¼­ ½ÇÇà Àߵ˴ϴÙ.
Å« Àǹ̰¡ ¾ø´Â µíÇѵ¥ ù¹ø° ¶óÀÎ #!/usr/bin/env bash => #!/usr/bin/bash·Î Á÷Á¢ bash·Î ÁöÁ¤Çغ¸¼¼¿ä
/usr/bin/bash --versionÀ¸·Î ¹öÀü È®ÀÎÇØ º¸¼¼¿ä
¿À·ù°¡ ³­ ÇØ´ç ¶óÀÎÀÇ Àǹ̴ - ȤÀº -- ¿É¼ÇÀ» ÁÖ¸é ÇØ´ç ¿É¼ÇÀÚü°¡ $1 ÆĶó¹ÌÅÍ°¡ µÇ°í
$2´Â ÇØ´ç ¿É¼Ç¿¡ ÁØ °ªÀ» ÀǹÌÇÏ´Â °ÍÀ¸·Î Ç¥½ÃÇϽÅ
 PING_PARAMS+=("$1")  ºÎºÐÀº ÀÌ·± ¿É¼ÇÀ» ÁÖÁö ¾ÊÀ¸¸é ÀÌ°Ô ¹Ù·Î ping optionÀÌ µË´Ï´Ù.
±×¸®°í - ȤÀº -- ¿É¼Ç µÚ¾î shift´Â šv¿¡ ÁöÁ¤ÇÑ ÆĶó¹ÌÅ͸¦ Çϳª¾¿ ¾ÕÀ¸·Î ´ç±â°Ô µË´Ï´Ù.
 ./prettyping -last 10 192.168.0.11 ÀÌ·¸°Ô ¼öÇàÇß´Ù°í °¡Á¤ÇÏ¸é ´ÙÀ½°ú °°½À´Ï´Ù.
case¹®¿¡ -last    | --last ¿É¼Ç¿¡¼­ ÀÌ°Ô $1 °ªÀ¸·Î ¸ÅĪµÇ°í µÚ¿¡ ÁöÁ¤ÇÑ °ªÀÌ $2°¡ µË´Ï´Ù.
±×·±ÈÄ °ªÀÌ Çϳª shift Çؼ­ ¿Å±â°í case¹® Á¾·á(esac)ÈÄ °ªÀ» Çϳª shift ½ÃÄѼ­
°á±¹ ip °ªÀÌ PING_PARAMS¿¡ ¹è¿­·Î Ãß°¡µË´Ï´Ù.
ÁöÁ¤ÇÑ ¸ðµç ÆĶó¹ÌÅ͸¦ ÆĽÌÇÒ¶§±îÁö while¹®ÀÌ µ½´Ï´Ù.
command parameter parsing ÀϹÝÀûÀÎ ¹æ¹ýÀÔ´Ï´Ù.
±×¸®°í pingÀÌ OS ¸¶´Ù optionÀÌ Á¶±Ý¾¿ ´Ù¸¨´Ï´Ù.


QnA
Á¦¸ñPage 4685/5683
2014-05   4955112   Á¤ÀºÁØ1
2015-12   1491625   ¹é¸Þ°¡
2021-01   3007   ¸°µå¹ö±×
2018-09   3007   Á¤Èñ¼·
2021-03   3006   hitpercent
2023-05   3006   ÀÓ¸í»ó
2017-08   3006   ¹é¸¸½º¹°Çϳª
2018-08   3006   ¾È±Ô¹Î
2021-01   3006   ¿ìÀ¯¸Ô´Â»ç½À
2019-09   3006   ĸƾ¾Æ¸Þ¸®Ä«³ë
2019-03   3006   ´ÃÆĶõ
2020-06   3006   ÇູÇϼ¼
2020-06   3006   ½ÅÀº¿Ö
2019-09   3006   ³ªºñz
2015-01   3006   metaljw
2014-02   3006   ³ªÆÄÀÌ°­½ÂÈÆ
2022-03   3006   ½É¿ìö
2019-01   3006   ¼­±¤Èñ
2020-03   3006   °Ü¿ï³ª¹«
2019-07   3006   ¹Ì´ÏTM
2018-08   3006   ±èÁ¦¿¬
2020-12   3006   ÇÏ´ÃÇÏ´Ã