string 관련 실습
3 #!/bin/sh
4 PATH_VAL="/home/bnk/code/home/bnk/code/bnk/code"
5 echo ${PATH_VAL}
6 echo ${PATH_VAL%/bnk*}
7 echo ${PATH_VAL#/*bnk}
8 echo ${PATH_VAL%%/bnk*}
9 echo ${PATH_VAL##/*bnk}
10
~
명령행의 인자
1 #!/bin/bash
2
3 echo '$* : '$*
4 echo '$# : '$#
5 echo '&@ : '$@
6 echo " : $1 $2 $3"
7
for 문
1 #!/bin/sh
2
3 for VAL in 0 1 2
4 do
5 echo "VAL = ${VAL}"
6 done
1 #!/bin/bash
2
3 for ((i=0 ; i<10 ; i++))
4 do
5 echo $i
6 done
구구단 만들기
숫자 계산하는 3가지 방법
#expr 버전
for (($COUNT; COUNT<10; COUNT++))
do
echo "$DAN x $COUNT = " expr $DAN \* $COUNT
done
#bc 버전
for (($COUNT; COUNT<10; COUNT++))
do
echo "$DAN x $COUNT = " echo "$DAN*$COUNT"|bc
done
#바로 계산하는 버전
for (($COUNT; COUNT<10; COUNT++))
do
echo "$dan * $count = $((dan*$count))"
done
1 #!/bin/bash
2 dan=5
3
4 for ((i=1 ; i<10 ; i++))
5 do
6 echo "by num1 $dan * $i =" `echo "$dan*$i" | bc`
7 done
배열 array
1 #!/bin/bash
2
3
4 array=(5 3 7 2 9)
5
6 echo ${array[0]}
7 echo ${array[1]}
8 echo ${array[2]}
9 echo ${array[3]}
10 echo ${array[4]}
11
array for 문안에서 사용하는 방법
1 #!/bin/bash
2
3
4 array=(5 apple 7 3.14 9)
5
6 for item in ${array[@]}
7 do
8 echo $item
9 done
10
11 echo ${array[@]}
1 #!/bin/bash
2
3 array=(5 3 7 2 9)
4
5 echo ${array[@]}
6
7 array[0]=7
8
10 echo ${array[@]}
11
12
@ vs *
1 #!/bin/bash
2
3 array=(5 3 7 2 9)
4
5 for item in "${array[@]}"; do
6 echo '@ ' $item
7 done
8 echo =========================
9
10 for item in "${array[*]}"; do
11 echo '* ' $item
12 done
13
* 은 배열을 한 덩어리로 인식
@ 는 각각을 지정
"" 로 안감싸면 똑같이 동작한다.
date
1 #!/bin/bash
2
3 array=(`date`)
4
5 echo ${array[0]}
6 echo ${array[1]}
7 echo ${array[2]}
8 echo ${array[3]}
until while 반대
exit
select in
function
함수를 정의하고 사용할 수 있다.
1 #!/bin/bash
2
3 function RetValue
4 {
5 echo "RetValue"
6
7 return 100
8 }
9
10 RetValue
11 echo "함수 반환값 [${?}]"
eval
`` 과 거의 비슷하지만 |(파이프) 등 같이 쓰는 기능이 동작 하지 않을 때 eval 사용하면 동작 한다.
1 #!/bin/bash
2
3 command="ls -al | more"
4
5 echo "======================="
6 echo ${command}
7 echo "======================="
8 eval ${command}
9 #echo `ls -al | more`
'공부,일 > 셸 스크립트' 카테고리의 다른 글
달팽이 행렬 출력하기 (0) | 2021.06.22 |
---|---|
쉘스크립트 실습 20210621 (0) | 2021.06.21 |
20210618 (0) | 2021.06.18 |
shell scrip 권한 읽고 수정하는 방법 (0) | 2021.06.18 |
winscp (0) | 2021.06.18 |
댓글