[유닉스] 쉘 스크립트(Shell Script) 문법 - 사용자로부터 입력 받기


사용자로부터 입력 받기 : read

  • read 명령은 쉘 내장 명령
  • 터미널이나 파일로부터 입력을 받아 들임

$ cat n test_read
1 #!/bin/bash
2 #
3 # read user input
4 #
5
6 read x
7 echo x : $x
8
9 read x y
10 echo x : $x
11 echo y : $y
12
13 read p Input : 
14 echo input : $REPLY
$
  • 실행 결과
$ chmod +x test_read
$ ./test_read
100
x : 100
100 200 300
x : 100
y : 200 300
Input : 100 200 300 400
input : 100 200 300 400
$

here 문서를 통한 입력 받기 : «

  • 표준 입력을 사용자로부터 직접 받아들이지 않고 자동으로 처리할 때 here 문서 사용
  • «가 입력 종료 문자의 지정을 알리는 기호이며 다음에 나오는 문자열이 종료 문자
  • 종료 문자로 사용될 문자는 입력에 나오지 않을 문자열로 지정해야 함
  • 예제
$ cat n test_here
1 #!/bin/bash
2 # test here document
3 #
4
5 cat n << END
6 This
7 is
8 a
9 test
10 doc
11 for
12 here document.
13 END
$
  • 실행 결과
$ chmod +x test_here
$ ./test_here
1 This
2 is
3 a
4 test
5 doc
6 for
7 here document.
$