사용자 변수
쉘 스크립트 안에서 쓸 수 있는 변수를 선언할 수 있다.
변수를 선언함으로써 데이터를 저장하여 사용할 수 있고, 프로그래밍에 가까워 질 수 있다.
변수명=변수값
var=7
var_str="It is my string"
변수형은 쉘에서 자동으로 결정한다.
그리고 변수의 생명주기는 쉘 스크립트가 실행되어 끝날 때까지다.
명령 치환
명령의 결과를 변수에 저장할 수 있다.
#!/bin/bash
echo "hello world!"
test_0=$(ls)
test_1=$(date)
echo $test_0
echo $test_1
$()를 사용하여 명령의 결과값을 얻을 수 있다.
소괄호 안에는 반드시 명령어가 들어가야 한다.
변수명을 적을시 Command not found 라고 뜰 것이다.
왜냐하면 명령어를 적지 않고 변수명을 적었으니 정의된 명령어가 아니므로 에러를 출력할 것이기 때문이다.
ls 명령의 결과를 test_0 변수에 저장하고
date 명령의 결과를 test_1 변수에 저장한다.
활용예) 시뮬레이션 결과를 날짜별로 관리하기
#!/bin/bash
sim_time=$(date +%y%m%d.%H%M%S)
mkdir sim_$sim_time
출력 리다이렉트
이전 포스트에 간략히 설명하였다.
출력 리다이렉트는 명령의 출력을 받아서 파일로 전송한다.
기본 출력 리다이렉트 형식은 다음과 같다.
command > outputfile
기존의 내용에 출력 결과를 추가하고 싶다면
command >> outputfile
입력 리다이렉트
입력 리다이렉트는 출력 리다이렉트와는 반대로,
파일의 내용을 받아서 명령으로 보내준다.
command < inputfile
다른 점이 하나 있다면 << 부호는 인라인 입력 리다이렉트라는 기호다.
파일 대신 터미널로 입력 리다이렉트를 할 데이터를 지정할 수 있다.
command << marker
data 0
data 1
data 2
...
marker
시작과 끝의 marker 는 동일해야 한다.
wc 명령은 데이터의 줄, 단어, 바이트의 수를 출력한다.
총 3줄, 15개의 단어,
4(띄어쓰기)+19(글자)+1(NULL)+
4(띄어쓰기)+19(글자)+1(NULL)+
4(띄어쓰기)+20(글자)+1(NULL)+
4(띄어쓰기)+19(글자)+1(NULL) = 73 바이트
'Developer > Linux' 카테고리의 다른 글
쉘 스크립트 작성(3) (0) | 2019.06.16 |
---|---|
쉘 스크립트 작성(2) (0) | 2019.06.16 |
쉘 스크립트 파일 만들기 (0) | 2019.06.09 |
변수 배열 (0) | 2019.06.09 |
PATH 환경 변수 (0) | 2019.06.09 |