리눅스

쉘 프로그래밍 [read 명령]

작성자
heukchoo
작성일
2021-01-18 00:20
조회
418
C언어의 scanf와 같이 외부(사용자 등) 입력을 변수로 받을 때 read를 사용한다.
read 명령은 공백 여부에 상관없이 한 줄씩 값을 입력받기 때문에 파일내용을 한 줄씩 읽어들일때도 유용하다.


read 구조  

read 변수 read -p "출력문자" 변수

변수는 입력값을 받아들일 변수이다.
-p 옵션을 사용하면 스크립트 실행시 출력문자를 출력하고 프롬프트 대기상태가 된다.
프롬프트에 사용자가 값을 입력하면 이것을 변수에 저장한다.    


read 사용 예시


read1.p 스크립트
#!/bin/bash
read var
echo $var

$echo "heuk choo" | ./read1.p
heuk choo

표준입력으로 변수에 저장


read2.p 스크립트
#!/bin/bash
while read line
do
echo $line
done

$cat 파일.txt | ./read2.p
heuk choo
good luck
. .

while 문을 이용하여 파일 내용을 한줄씩 변수에 저장


read3.p 스크립트
#!/bin/bash
read -p "name: " var
echo "your name is $var"

$./read3.p
name: heukchoo (<-- 사용자가 입력)
your name is heukchoo

-p 옵션을 사용하여 프롬프트에 사용자가 입력한 값을 변수에 저장
전체 0