Shell script Basics
#
Basic script#
Exit#
Shellcheck#
Variablescaution
shell script๋ ๊ณต๋ฐฑ ์ฌ์ฉ์ ์ฃผ์ํด์ผ ํฉ๋๋ค.
#
Reserved Variable$HOME
: ์ฌ์ฉ์ ํ ๋๋ ํ ๋ฆฌ$PATH
: ์คํ ํ์ผ ๊ฒฝ๋ก$EUID
: Effective User ID
#
Commandsํฐ๋ฏธ๋์์ ์ฌ์ฉํ๋ ์ปค๋งจ๋๋ฅผ ๋ชจ๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.
#
Functions#
Special parameters$0
: ์คํฌ๋ฆฝํธ ์ด๋ฆ$n
: n๋ฒ์งธ ์ธ์$*
: ๋ชจ๋ ์ธ์$@
: ๋ชจ๋ ์ธ์$#
: ์ธ์ ๊ฐ์$?
: ์คํฌ๋ฆฝํธ์์ ์ต๊ทผ ์คํ๋ ๋ช ๋ น์ด, ํจ์, ์์ ์คํฌ๋ฆฝํธ ์ข ๋ฃ ์ํ
#
if ๋ฌธ#
Conditional expressions#
Relation$num1 -eq $num2
:num1 == num2
$num1 -ne $num2
:num1 != num2
$num1 -gt $num2
:num1 > num2
$num1 -ge $num2
:num1 >= num2
$num1 -lt $num2
:num1 < num2
$num1 -le $num2
:num1 < = num2
#
String"$str1" = "$str2"
: ๋ฌธ์์ด์ด ๊ฐ์ผ๋ฉด true"$str1" != "$str2"
: ๋ฌธ์์ด์ด ๋ค๋ฅธ๋ฉด true-z "$str"
: ๋น ๋ฌธ์์ด์ด๋ฉด true-n "$str"
: ๋น ๋ฌธ์์ด์ด ์๋๋ฉด true
#
File test-e file
: ํ์ผ์ด ์กด์ฌํ๋ฉด true-d directory
: ๋๋ ํ ๋ฆฌ๊ฐ ์กด์ฌํ๋ฉด true-r file
: ํ์ผ์ด ์ฝ๊ธฐ ๊ฐ๋ฅํ๋ฉด true-w file
-x file
#
Boolean! expression
: ์กฐ๊ฑด์ด ๊ฑฐ์ง์ด๋ฉด true