July Tech Fest 2018ã®B40ã§ã話ããè³æã§ãã

July Tech Fest 2018ã®B40ã§ã話ããè³æã§ãã
ãã¯ãããããã¾ãã è£æã£ã¦ã¤ããã¨æ¥ã«ã¯ã¶ããæãåºã¦ãæãããã§ããããã ããªãã 飲ã¿ä¼ã§åæã¨ãããªè©±ããã¦ããã¾ããã æ¬é¡ ãã°ã¤ã³ãå¿ è¦ãªWebãµã¤ãã§ç»åãå¼ã£ãæãã¦æ¬²ããã¨ããä¾é ¼ããããã¹ã¯ãªãããæ¸ãããªãã¨è¿·ã£ããã§ãããããèãããã·ã§ã«è¸ã ãã§åºæ¥ããªãã¨æã£ãã®ã§å ±æãããã¨æãã¾ãã ä»åã¯ãã¶ã¤ãã¼ã«GitHubã®Issueã«è²¼ã£ã¦ããç»å200æä»¥ä¸ãzipã§æ¬²ããã£ã¦è¨ãããã®ã§ãããã顿ã«ãã¾ãã ç°å¢ Chrome curl grep egrep ããæ¹ 1. Chromeã§ããããã«ãããããã¼ãã¼ã«ãéã Macãªã Shift + Cmd + cçã§éãã¾ãã 2. networkã鏿ãã ãã®ãã¼ã¸ã®ãªã¯ã¨ã¹ããè¦ã¤ãã ãã¶ããä¸çªä¸ã®ã¯ãã 3. å³ã¯ãªãã¯ãã¦ãCopy as cURLã鏿 ä»åã®èã¯ããã§ããã©ã¦ã¶ã§éã£ã
ãã®æç¨¿ã¯ã¯ãã¼ã©ã¼ï¼ã¹ã¯ã¬ã¤ãã³ã° Advent Calendar 2014ã®12æ25æ¥ç¨ã§ãã 199Xå¹´ãæ ¸æ¦äºã«ãã£ã¦èå»ããæä»£ã«ãã¸ã£ã®ã¨ããç·ãããã ããããåãæ®æ®µä½¿ã£ã¦ããã·ã§ã«ã®ååãè¨ã£ã¦ã¿ããã å¼ã±ã³ã·ãã¦ã«æããã¾ããããè¨ã£ã¦ã¯ãâBourne Shellâã¨çããªãå¹³æ°éãèæ®ºããã¨ããæªè¡ãç¹°ãè¿ãã¦ãããå¼ã®åã«é ¼ããéã«é ¼ãã人質ã«é ¼ããå«ã¿éã«é ¼ããããã¦ã¬ã½ãªã³ã¨ããåãæã«é ¼ã£ããã®ç·ã¯ãå·±ã®èä½ã®ã¿ã§éãå¼ã«ãã£ã¦ãç¡æ§ãªææãéããã ãã¦é¡åã«ãããã¨ããããã®è¨äºã¯ãPOSIXåç主義ããã¤ã¾ãUNIXç³»OSæå°ã¤ã³ã¹ãã¼ã«æã«ä½¿ããã³ãã³ãã ãã§ã¹ã¯ã¬ã¤ãã³ã°ãã¾ããç«æ´¾ãªè¨èªãã©ã¤ãã©ãªã¼ããã£ããã¹ã´ãã¹ã¯ã¬ã¤ãã³ã°ãã§ãã¦å½ããåãããã ã¨éå ·ãã¹ã´ãã ãã§ããèªåã¯ãã¼ã¢ã¤ãã¢ã§ããã¨è¨ã£ã¦ãããããªãã®ã§ãã ããããªãã
bashã§å°æ°ç¹ãæ¯è¼ããæ¹æ³ãç´¹ä»ãã¾ãã ï¼ï¼åé¡ç¹ 以ä¸ã®ãããªå°æ°ç¹ãæ¯è¼ããã¹ã¯ãªãããæ¸ãã¾ããã #!/bin/sh foo=0.2 bar=0.3 if [ $foo > $bar ]; then echo "$foo is large." else echo "$bar is large." fi ãããã®ã¹ã¯ãªããã§ã¯æå¾ ããåä½ã«ãªããã0.2 is large.ãã¨è¡¨ç¤ºããã¾ãã ã¨ãããã¨ã§ãbashã§å°æ°ç¹ãæ¯è¼ããæ¹æ³ãç´¹ä»ãã¾ãã ï¼ï¼bashã§å°æ°ç¹ãæ¯è¼ãã bashã§å°æ°ç¹ãæ¯è¼ããã«ã¯ãå°æ°ç¹ã®æ¯è¼ãbcã³ãã³ãã使ã£ã¦è©ä¾¡ãã¾ãã #!/bin/sh foo=0.2 bar=0.3 result=`echo "$foo > $bar" | bc` if [ $result -eq 1 ]; then echo "$foo is large." el
ãããè¨äºãé·ããããç°¡åãªã¢ã¦ãã©ã¤ã³ãæ¸ãã¦ããã¾ããè¦ç¹ã ãæ´ã¿ããå ´åã¯ãæçµé ã®ãã¾ã¨ãããèªãã®ãããããããã¾ããã ã³ãã³ãã©ã¤ã³å¼æ°ã®ä¸è¬çãªè§£æææ³ ããããã®ç¹å¾´ ã getopt 㨠getopts ã®éã getoptsï¼ã¡ãªããã»ãã¡ãªããï¼ getoptï¼ã¡ãªããã»ãã¡ãªããï¼ èªåã§è§£æãã¡ããï¼å¯ä¸ã®ãã¡ãªããï¼ ã¾ã¨ã ============================= ã³ãã³ãã©ã¤ã³å¼æ°ãå¦çããä¸è¬çãªææ³ã¨ãã¦ã getopts getopt shift ãªã©ã§èªåã§è§£æ ã¨ãã£ãå ·åã«ãä¸ããé ã«èãã¤ããã¨æãã¾ããgetopt(3) 㯠UNIX ã«ããã¦ãã³ãã³ãã®å¼æ°ãå¦çããä¸è¬ç㪠C è¨èªã®ã©ã¤ãã©ãªé¢æ°ã§ãããããç¨ãã¦å®è£ ãããã³ãã³ãã getopt(1) ã§ããBourne ã·ã§ã«ç³»ã ã¨å é¨é¢æ°ã«ãªãã¾ãããå系統ã®
ASCII Booksã®ãµã¤ãããå©ç¨ããã ãããããã¨ããããã¾ãã 2016å¹´12æ6æ¥ããã¡ã¾ãã¦ããµã¤ããééããã¦ããã ããã¨ã«ãªãã¾ããã ä»ã¾ã§ãµã¤ãããå©ç¨ããã ãããããã¨ããããã¾ããã ã¢ã¹ãã¼ã»ã¡ãã£ã¢ã¯ã¼ã¯ã¹ãå¼ãç¶ãããããããé¡ããããã¾ãã
ã§ããã°ã·ã§ã«ã¹ã¯ãªãããªãã¦æ¸ããããªããã ãã©ï¼ã¾ã ã¾ã æ¸ãæ©ä¼ã¯å¤ãï¼ã·ã§ã«è¸ãã¯ã³ã©ã¤ãã¼ã®ãããªåã£ããã¨ã§ã¯ãªãï¼ä»ã®ã²ã¨ã使ããããã·ã§ã«ã¹ã¯ãªãããæ¸ãããã«èªåãå®è·µãã¦ãããã¨ãã¾ã¨ãã¦ããï¼ ãã«ãã¡ãã»ã¼ã¸ æ¸ãã¦ãã·ã§ã«ã¹ã¯ãªãããä½¿ãæ¨ã¦ã§ã¯ãªãä½åº¦ã使ããã®ã§ããå ´åã¯ï¼æ¬ä½ãæ¸ãå§ããåã«ï¼ãã®ã¹ã¯ãªããã®ä½¿ãæ¹ã表示ããusage颿°ãæ¸ãã¦ãã¾ãï¼ ãããæ¸ãã¦ããã¨ï¼å¾ã ãã¼ã ã¸å ±æããããããªãï¼ã¨ããããusageè¦ã¦ãã ããã¨è¨ããï¼ã¾ãï¼ãããããæ¸ããã¨ã§ï¼åãªãã·ã§ã«ã¹ã¯ãªããã§ãã£ã¦ãèªåã®ä¸ã§åä½ãæ´çãã¦ããæ¸ãå§ãããã¨ãã§ããï¼é¢æ°ã¨ãã¦æ¸ãã®ã¯ï¼usageã表示ãã¦ãããã¨ããå ´é¢ãããã¤ãããï¼ä½¿ãåããã¨ãã§ããããï¼ ä»¥ä¸ã®ããã«æ¸ãï¼ function usage { cat <<EOF $(basename ${0})
@hirose31 ããããã·ã§ã«ã¹ã¯ãªããã§ããã£ãä»¶âãåãã¹ãããªåé¿æ¹æ³ãã§ãé¡ãåºããã¦ãã¦ãããã«åçãã¦ã¿ã¾ããã ãã®å 容ã¯ãªã³ã¯å ãè¦ã¦ãããã¨ãã¦ãåçã®ä¸ã§ä½¿ã£ãbashã®ããã»ã¹ç½®æã«ã¤ãã¦æ¸ãããè¨äºããã¾ãè¦ãªãã®ã§ãåçã§ä½¿ã£ãããã»ã¹ç½®æã®ãã¨ãã¨ã³ããªã«ãã¦ã¿ããã¨æãã¾ãã æåã«æ³¨æç¹ã§ãããããã»ã¹ç½®æã®æ©è½ã¯ãbashãzsh*1ã®æ©è½ã§POSIXäºæã®æ©è½ã§ã¯ããã¾ããããã®ãããä½¿ç¨æã«ã¯ã対å¿ãã¦ããªãã·ã§ã«ã§ã¯ä½¿ãã¾ããããbashã§ä½¿ãå ´åã /bin/sh ã§ã¯ãªã /bin/bash ãæç¤ºçã«æå®ããå¿ è¦ãããã¾ãããã¨ãã°ãããã»ã¹ç½®æã使ã£ãã¹ã¯ãªãããscript.shãã«å¯¾ãã¦"$ bash script.sh" ã¨ããã³ãã³ãã¯æåãã¾ããã"$ sh script.sh" ã¨ããã³ãã³ãã¯å¤±æãã¾ãããã®è¾ºãã®éãã¯ã/
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}