
π μμ½
μ»΄ν¨ν°λ₯Ό μ¬μ©νλ €λ©΄ μ΅μ΄ μλμ°λ₯Ό μ€μΉν΄μΌ μ¬μ©ν μ μμ.
μλμ° νλ‘κ·Έλ¨μ OS(Operating System) λΌκ³ νκ³ μ΄μ체μ λΌκ³ ν¨.
μ΄μ체μ λ ν€λ³΄λ, λ§μ°μ€, μμ
, λμμ λ±μ νκ²½μ μ½κ² μ¬μ©ν μ μκ² ν΄μ£Όλ S/W λ‘ μ΅μ΄λ‘ μ€μΉλμ΄μΌ ν¨.
μ΄μ체μ μ μ’
λ₯λ μλμ°(Window), 리λ
μ€(Linux), μ λμ€(Unix)κ° μμΌλ©° μ£Όλ‘ κ°μΈμ©μΌλ‘ μλμ°λ₯Ό μ¬μ©νκ³ νμ¬μμλ 리λ
μ€ λλ μ λμ€κ° μ¬μ©λ¨
μμ κΈ°μ :
– Basic : 리λ μ€
π κΈ°μ ꡬν
μ€ν :
- docker desktop
π 컨ν μ΄λ κ°λ°
μ°Έκ³ ) μ μ€ν¬λ¦½νΈ : μ μμ μνν λͺ λ Ήμ΄λ₯Ό μ μ΄ λμ νμΌ
λ¨μν λͺ λ Ήμ΄λ₯Ό λμ΄νκΈ°λ νκ³ , 쑰건문, λ°λ³΅λ¬Έμ κΈ°μ ν΄μ μ¬μ©ν μ μμ(νλ‘κ·Έλλ° μΈμ΄)
μ₯μ : 1) 볡μ‘ν μ²λ¦¬λ₯Ό μ½κ² μ€νν μ μκ³
2) λ°λ³΅λλ μ²λ¦¬λ₯Ό νλ²μ μμ±μΌλ‘ μ¬μ¬μ©ν μ μμ
3) νμΌλ‘ μ μλλ―λ‘ λ€λ₯Έμ¬λμκ² κ³΅μ λ κ°λ₯
(1) μ μ ν
sh : λ³Έμ (κ³Όκ±°, νμ¬)
bash : μμ¦ λ§μ΄ μ¬μ©νλ μ
(2) μ μ€ν¬λ¦½νΈ μμ±
μμ 1) ν λλ ν 리μ νμΌ μ¬μ©λμ(ν¬κΈ°) μΆλ ₯
λ¨μ : MByte, KByte λ¨μ
μ¬μ©λ²) du -h
(MByte, KByte λ¨μλ‘ λ³΄μ)
(1) 리λ μ€ μ»¨ν μ΄λ μ€ν
컨ν μ΄λ μ 체 λͺ©λ‘ 보기
docker ps -a
C:\Users2>docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7aea09695595 ubuntu:18.04 "bash" 23 hours ago Exited (0) 22 hours ago elegant_swartz ...μλ΅
컨ν μ΄λ μ€ν
docker start 7aea09695595
C:\Users2>docker start 7aea09695595 7aea09695595
컨ν μ΄λ μ μ
docker attach 7aea09695595
C:\Users2>docker attach 7aea09695595
(2) 리λ μ€ μ μ
ubuntu ν둬ννΈ
root@7aea09695595:/#
home μ΄λ
root@7aea09695595:/# cd home root@7aea09695595:/home# ls
oracle λλ ν 리 μμ±
mkdir oracle
root@7aea09695595:/home# mkdir oracle
head : λ¬Έμ μμμ λͺκ°λ§ 보기 λͺ λ Ήμ΄
tail : λ¬Έμ λμμ λͺκ°λ§ 보기 λͺ λ Ήμ΄
μ¬μ©λ²) tail -n κ°μ
μ¬μ©λ²) λͺ λ Ήμ΄ | λͺ λ Ήμ΄2 -> λͺ λ Ήμ΄μ μΆλ ₯κ²°κ³Όκ° λͺ λ Ήμ΄2μ μ λ ₯μΌλ‘ μ¬μ©λ¨
root@7aea09695595:/home# du -h | tail -n 1 8.0K .
(3) μ μ€ν¬λ¦½νΈ μμ±
1) homesize.sh νμΌ μμ±
#!/bin/bash tail -n 1 echo End Shell Script
2) homesize.sh μ€ν κΆν λΆμ¬ : chmod λͺ λ Ήμ΄ μ΄μ©
μ¬μ©λ²) chmod (u,g,o)+(r,w,x) νμΌλͺ
u : user, g : group, o : other , r : read, w : write, x : execute
chmod +x homesize.sh
root@7aea09695595:/home# chmod +x homesize.sh root@7aea09695595:/home# ls -l total 8 -rwxr-xr-x 1 root root 31 Jun 9 01:35 homesize.sh drwxr-xr-x 2 root root 4096 Jun 9 01:01 oracle
μ μ€ν¬λ¦½νΈ μ€ν
root@7aea09695595:/home# ./homesize.sh
3) μ λ± : #!
μ¬μ©λ²) #!μ λͺ λ Ήμ΄
λ°°μ¬μ μ μ¬μ©νκ² λ€λ μμ€ν¬λ¦½νΈ : #!/bin/bash
λ³Έμ μ μ¬μ©νκ² λ€λ μμ€ν¬λ¦½νΈ : #!/bin/sh
μ°Έκ³ ) vim(vi) μλν° μ€μΉ
apt-get install -y vim
μ°μ΅λ¬Έμ 1) μλμ κ²°κ³Όμ κ°μ μ μ€ν¬λ¦½νΈ μμ±νκΈ°
μ μ€ν¬λ¦½νΈλͺ : rootfs.sh
(1) echo “root directory”
(2) cd /
(3) ls -l
#!/bin/bash echo "root directory" cd / ls -l
λ¨, μ μ€ν¬λ¦½νΈμ μ€ν κΆνμ μΆκ°νκ³ μ€ννμΈμ
μ μ€ν¬λ¦½νΈ μμ± : rootfs.sh
cat > rootfs.sh
root@7aea09695595:/home# cat > rootfs.sh #!/bin/bash echo "root directory" cd / ls -l
μ€ν κΆν μ£ΌκΈ° :
chmod +x rootfs.sh
root@7aea09695595:/home# chmod +x rootfs.sh
μ μ€ν¬λ¦½νΈ μ€ν
./rootfs.sh
root@7aea09695595:/home# ./rootfs.sh root directory total 80 drwxr-xr-x 1 root root 4096 Jun 8 01:53 bin drwxr-xr-x 2 root root 4096 Apr 24 2018 boot ...μλ΅
4) λ³μ μμ±
μ°Έκ³ ) μ£Όμ : #(μ μ€ν¬λ¦½νΈ μ£Όμ)
μ λ³μ(νκ²½λ³μ) : λ€λ₯Έ νλ‘κ·Έλλ° μΈμ΄μ λΉμ·ν μ©λλ‘ μ¬μ©
μ¬μ©λ²) λ³μ=κ° : λ³μμ μ
$λ³μ : λ³μλ₯Ό μ¬μ©ν λ μμ $ λΆμ¬μΌν¨
=(λμ μ°μ°μ) μλ€μ κ³΅λ°±μ΄ μμΌλ©΄ μλ¨
λ¬Έμμ΄ : λ°μ΄ν(ν, μ)
μ μ : μ«μ
μμ 2) hello world μ λ³μ HELLO μ λ£κ³ echo μ λ³μλ₯Ό μΆλ ₯ν΄λ³΄μΈμ
νμΌλͺ : hello.sh
#!/bin/bash HELLO="hello world" echo $HELLO
hello.sh μ μ€ν¬λ¦½νΈ μμ±
cat > hello.sh
root@7aea09695595:/home# cat > hello.sh #!/bin/bash HELLO="hello world" echo $HELLO
μ€ν κΆν μ£ΌκΈ°
chmod +x hello.sh
root@7aea09695595:/home# chmod +x hello.sh
μ€ννκΈ°
./hello.sh
root@7aea09695595:/home# ./hello.sh hello world root@7aea09695595:/home#
5) λ³μμ λͺ λ Ήμ΄ λ£κΈ°
μλ³μμ λͺ λ Ήμ΄ μ체λ₯Ό λ£μ μ μμ
μ¬μ©λ²) λ³μ=$(λͺ
λ Ήμ΄) == λ³μ=λͺ
λ Ήμ΄
μμ 3) νμ¬λ μ§λ₯Ό λ³μμ λ£κ³ νμ¬λ μ§ μ΄λ¦μΌλ‘ λΉνμΌμ λ§λ€μ΄ 보μΈμ
νμ¬λ μ§ λͺ λ Ήμ΄) date +%Y-%m-%d
+ : ν¬λ§· μ¬μ©
%Y : 4μ리 μ°λ
%m : μ
%d : μΌ
μκ° μ°Ύμ보기(ꡬκΈ)
var.sh μμ±
root@7aea09695595:/home# cat > var.sh #!/bin/bash curdate=$(date +%Y-%m-%d) curdate2=`date +%Y-%m-%d` echo $curdate echo $curdate2
μ€ν κΆν μ£ΌκΈ°
chmod +x var.sh
root@7aea09695595:/home# chmod +x var.sh
μ€ν
root@7aea09695595:/home# ./var.sh 2023-06-09 2023-06-09 root@7aea09695595:/home#