ã·ã§ã«ã¹ã¯ãªããã¨ã¯ä½ã§ãã?
ã·ã§ã« ã¹ã¯ãªããã«ã¯ãã·ã§ã« ã¹ã¯ãªããã¨å¼ã°ãããã¬ã¼ã³ ããã¹ã ãã¡ã¤ã«ã«ä¸é£ã®ã³ãã³ããè¨è¿°ãããã¨ãå«ã¾ãã¾ãããããã®ã¹ã¯ãªããã¯ãã³ãã³ãã©ã¤ã³ ã¤ã³ã¿ã¼ããªã¿ã§ããã·ã§ã«ã«ãã£ã¦å®è¡ããã¾ããæãä¸è¬çãªã·ã§ã«ã«ã¯æ¬¡ã®ãã®ãããã¾ãã
- ããã·ã¥ (ãã¼ã³ã»ã¢ã²ã¤ã³ SHell)
- Zsh (Z ã·ã§ã«)
- éã
ã·ã§ã« ã¹ã¯ãªããã¯ãåç´ãªã¯ã³ã©ã¤ãã¼ããè¤éãªããã°ã©ã ã¾ã§å¤å²ã«ãããããã¡ã¤ã«æä½ãã·ã¹ãã 管çãå復ã¿ã¹ã¯ã®èªååãªã©ããã¾ãã¾ãªã¿ã¹ã¯ãå®è¡ããããã«ä½¿ç¨ããã¾ãã
ã·ã§ã«ã¹ã¯ãªããã®å©ç¹:
èªåå: ã·ã§ã« ã¹ã¯ãªããã使ç¨ããã¨ãã¦ã¼ã¶ã¼ã¯å復çãªã¿ã¹ã¯ãèªååããæéãç¯ç´ãã人çã¨ã©ã¼ã®å¯è½æ§ãæ¸ãããã¨ãã§ãã¾ãã
ã«ã¹ã¿ãã¤ãº: ã¦ã¼ã¶ã¼ã¯ãç¹å®ã®ãã¼ãºã«åãããã¹ã¯ãªããã使ãã¦ãé«åº¦ãªã«ã¹ã¿ãã¤ãºãè¡ããã¨ãã§ãã¾ãã
ãããå¦ç: ã·ã§ã« ã¹ã¯ãªããã¯ãè¤æ°ã®ã³ãã³ããé çªã«å®è¡ããå¿ è¦ããããããå¦çã¿ã¹ã¯ã®å¦çã«åªãã¦ãã¾ãã
ã·ã¹ãã 管ç: ã·ã§ã« ã¹ã¯ãªããã¯ãããã¯ã¢ããããã°ã®ãã¼ãã¼ã·ã§ã³ãã½ããã¦ã§ã¢ã®ã¤ã³ã¹ãã¼ã«ãªã©ã®ã·ã¹ãã 管çã¿ã¹ã¯ã«ãã使ç¨ããã¾ãã
åç´ãªã·ã§ã« ã¹ã¯ãªããã使ãã¾ãã
æ¨æ¶ã¡ãã»ã¼ã¸ãåºåããåºæ¬çãªã·ã§ã« ã¹ã¯ãªããã使ãã¦ã¿ã¾ããããããã¹ã ã¨ãã£ã¿ãéãããgreeting.shãã¨ããååã®ãã¡ã¤ã«ã使ãã¾ããæ¬¡ã®è¡ã追å ãã¾ãã
#!/bin/bash
# This is a simple shell script
echo "Hello, welcome to the world of shell scripting!"
ãã¡ã¤ã«ãä¿åããã¿ã¼ããã«ã§æ¬¡ã®ã³ãã³ããå®è¡ãã¦å®è¡å¯è½ã«ãã¾ãã
chmod +x greeting.sh
ããã§ãã¹ã¯ãªãããå®è¡ã§ããããã«ãªãã¾ãã
./greeting.sh
åºåã¯æ¬¡ã®ããã«ãªãã¾ãã
Hello, welcome to the world of shell scripting!
Ubuntu ããã³ Linux ã§ã®ã·ã§ã« ã¹ã¯ãªããã®å®è¡:
ããã§ã¯ãUbuntu ããã³ Linux ã§ .sh ãã¡ã¤ã«ãå®è¡ããæ¹æ³ã«ã¤ãã¦èª¬æãã¾ãã
ã¹ã¯ãªãããå®è¡å¯è½ã«ãã: ã·ã§ã« ã¹ã¯ãªãããå®è¡ããåã«ããããå®è¡å¯è½ã§ãããã¨ã確èªãã¦ãã ãããåã«ç¤ºããããã«
chmodã³ãã³ãã使ç¨ãã¾ããã¹ã¯ãªãã ãã£ã¬ã¯ããªã«ç§»åãã¾ã: ã¿ã¼ããã«ãéãããcdãã³ãã³ãã使ç¨ãã¦ã·ã§ã« ã¹ã¯ãªãããå«ã¾ãããã£ã¬ã¯ããªã«ç§»åãã¾ãã
ã¹ã¯ãªãããå®è¡ãã¾ã: ã¿ã¼ããã«ã§ã./scriptname.shãã¨å ¥åãããscriptnameããå®éã®ã¹ã¯ãªããåã«ç½®ãæãã¦ã¹ã¯ãªãããå®è¡ãã¾ãã
cd path/to/script
./greeting.sh
- Bash ã³ãã³ãã®ä½¿ç¨: ã¹ã¯ãªããã
#!/bin/bash(shebang ã¨ãã¦ç¥ããã) ã§å§ã¾ãå ´åã¯ãbashã³ãã³ãã使ç¨ãã¦å®è¡ãããã¨ãã§ãã¾ãã
bash greeting.sh
ã·ã§ã«ã¹ã¯ãªããã® $@ ã¯ä½ãæå³ãã¾ãã?
ã·ã§ã« ã¹ã¯ãªããã§ã¯ã$@ ã¯ã¹ã¯ãªããã«æ¸¡ããããã¹ã¦ã®ã³ãã³ãã©ã¤ã³å¼æ°ã表ãã¾ãã弿°ã®ãªã¹ããå¥åã®ã¨ã³ãã£ãã£ã¨ãã¦åç
§ããããã«ãã使ç¨ããã¾ãã $@ ã®ããã«äºéå¼ç¨ç¬¦å
ã§ä½¿ç¨ããã¨ãã¹ãã¼ã¹ãç¹æ®æåãèæ
®ãã¦åã
ã®å¼æ°ãä¿æããã¾ãã
ç°¡åãªèª¬æã¯æ¬¡ã®ã¨ããã§ãã
$@: ã¹ã¯ãªããã¾ãã¯é¢æ°ã«æ¸¡ããããã¹ã¦ã®ä½ç½®ãã©ã¡ã¼ã¿ (弿°) ã表ãã¾ããå弿°ã¯å¥åã®åèªã¨ãã¦æ±ããã¾ãã$@: äºéå¼ç¨ç¬¦ã§å²ãã¨ã弿°ã®åé¢ãç¶æãããåã ã®å¼æ°å ã«ã¹ãã¼ã¹ã¾ãã¯ç¹æ®æåãå«ãããã¨ãã§ãã¾ãã
以ä¸ã«ç°¡åãªä¾ã示ãã¾ãã
#!/bin/bash
# Save this script as example.sh
echo "The total number of arguments is: $#"
echo "The arguments are: $@"
echo "The arguments with double quotes are: \"$@\""
ãã¨ãã°ã弿°ãæå®ãã¦ãã®ã¹ã¯ãªãããå®è¡ããã¨ã次ã®ããã«ãªãã¾ãã
bash example.sh arg1 "argument 2" arg3
次ã®ããã«åºåããã¾ãã
The total number of arguments is: 3
The arguments are: arg1 argument 2 arg3
The arguments with double quotes are: "arg1" "argument 2" "arg3"
ã覧ã®ã¨ããã$@ ã¯ãã¹ã¦ã®å¼æ°ã表ãã$@ ã¯ã¹ãã¼ã¹ãå«ã¾ãã¦ããå ´åã§ãåã
ã®å¼æ°ãä¿æãã¾ãã