반응형
지난 글에서는 쉘스크립트로 출력하는 방법에 대해서 다뤄보았다.
그렇다면 사용자 입력은 어떻게 받을까?
이번 글에서는 bash 쉘 스크립트에서 사용자 입력을 받는 방법에 대해서 살펴보자.
read
사용자로부터 입력을 받기 위해서는 read 명령어를 사용해서 입력받을 수 있다.
예제를 통해서 read 명령어를 통해서 사용자 입력을 받는 방법에 대해서 살펴보자.
사용자 입력을 받아서 출력
1
2
3
4
5
6
7
8
9
10
11
|
#!/bin/bash
echo "나이를 입력하세요"
read age
echo "당신의 나이는 $age 입니다."
## 출력
나이를 입력하세요
31
당신의 나이는 31 입니다.
|
cs |
read로 사용자 입력을 받아서 age 변수에 저장한 후 이를 echo로 출력해주는 예제이다.
위 예제에서는 입력을 하나만 받았지만, 띄어쓰기 단위로 여러개의 입력을 받을 수도 있다.
1
2
3
4
5
6
7
8
9
10
11
12
13
|
#!/bin/bash
echo "당신의 나이와 키를 입력하세요"
read age height
echo "당신의 나이는 $age 키는 $height 입니다."
## 출력
당신의 나이와 키를 입력하세요
31 181
당신의 나이는 31 키는 181 입니다.
|
cs |
배열로 입력받기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#!/bin/bash
echo "생각나는 단어 여러개를 입력해보세요"
read -a words
for word in ${words[@]}; do
echo "${word}"
done
## 출력
"생각나는 단어 여러개를 입력해보세요"
robot tesla gazua shell
robot
tesla
gazua
shell
|
cs |
만약 사용자 입력 갯수를 특정할 수 없다면 배열을 통해서 여러개의 입력을 받을 수 있다.
위 예제에서는 read에 -a 옵션을 주어서 배열형태로 값을 받아 words 변수에 저장한 예제이다.
사용자로부터 입력받은 4개의 단어를 for loop를 돌면서 출력해준다.
for loop에 대한 자세한 설명은 추후 글에서 정리하려고 한다.
반응형
'Linux' 카테고리의 다른 글
[linux] 환경변수 설정, 확인 및 해제 명령어 (0) | 2021.03.20 |
---|---|
[bash] 쉘 스크립트 조건문 사용법 (0) | 2021.03.20 |
[bash] 쉘스크립트로 출력하기 (echo, printf 명령어) (0) | 2021.03.14 |
[Linux] 사용자 쉘 바꾸는 명령어 (chsh) (0) | 2021.03.07 |
[python] list로 for문 돌면서 remove할때 주의할점 (6) | 2020.09.11 |