Home

사용자 인터페이스_05 사용자 키 입력을 한 글자만 받기(Enter 키 불필요)

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: stty, case, dd 키워드: 키보드, 입력, 줄바꿈, Enter 사용처: 키보드에서 글자 하나가 입력되면 Enter입력 없이 처리를 속행하고 싶을 때 실행예제 $ ./getchar.sh Type Your Answer [y/n] : y Input : Yes 스크립트 #!/bin/sh echo -n "Type Your Answer [y/n]: " # 현재 터미널 설정을 셸 변수 tty_state에 백업하고 # 터미널을 raw 설정함 tty_state=$(stty -g) #--------------------...

Read more

사용자 인터페이스_04 암호 입력 시 사용자 키 입력을 표시하지 않기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: stty, read, wget, curl 키워드: 암호 사용처: 사용자가 암호를 입력하는 처리에서 입력된 문자열을 화면에 표시하고 싶지 않을 때 실행예제 $ ./pass_wget.sh Password : <--------- 입력한 값이 표시되지 않음 스크립트 #!/bin/sh username=guest hostname=localhost echo -n "Password: " #에코백 OFF(-echo) stty -echo #------------------------------------- 1 read...

Read more

사용자 인터페이스_03 키보드에서 사용자 키 입력을 획득해서 변수값으로 이용하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: read 키워드: 표준 입력, 키보드 사용처: 키보드에서 입력받은 값을 써서 대화형 처리를 하고 싶을 때 실행예제 $ ./read.sh Enter your ID: guest Now your ID is geust <----------- 입력된 값을 표시 스크립트 #!/bin/sh echo -n "Enter your ID: " read id #--------------------- 1 echo "Now your ID is $id" #--- 2     해설 이 스크립트는 사용자가 키보드로 ID를 입력...

Read more

사용자 인터페이스_02 키보드에서 Ctrl +c를 입력했을때 현재 상태를 출력하며 종료하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: trap, exit, curl, sleep 키워드: 시그널, 트랩, 종료 사용처: 시간이 오래 걸리는 처리나 무한 반복 처리에서 사용자가 도중에 종료를 하기 위해서 Ctrl + C 키를 입력하더라도 종료하기 전에 어떤 처리를 했는지 확인하고 싶을 때 실행예제 $ ./sigint.sh http:/www.example.org/ % Total % Received % Xferd Average Dload Speed Upload Time Total Time Spent Time Left Current Speed 100 1270 100 127...

Read more

사용자 인터페이스_01 명령어 옵션 처리하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: getopts, case, shift 키워드: 옵션, 플래그, 명령행 인수 사용처: 스크립트에서 (-a 같은) 옵션을 해석해서 동작을 변경할 때 실행예제 $ ./getopts.sh -a -p '=====sep=====' /home/user1/docs . .. a.txt readme.txt =====sep===== 스크립트 #!/bin/sh # -a 옵션이 있는지 플래그 변수 a_flag와 # -p 옵션의 구분자를 정의하기 a_flag=0 #-----------------------------------------...

Read more

bash_09 정수값으로 난수 얻기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: nc, echo, sleep 키워드: 난수, 정수 사용처: 외부 명령어를 사용하지 않고 셸 스크립트만으로 난수를 얻고 싶을 때 실행예제 $ ./bash-random.sh Connection to 192.168.2.1 80 port [tcp/http] succeeded! Wait: 4 sec. Connection to 192.168.2.1 80 port [tcp/http] succeeded! 스크립트 #!/bin/bash # 접속 정보 정의 ipaddr="192.168.2.1" #-------------------...

Read more

bash_08 간단한 메뉴를 표시해서 사용자가 선택할 수 있게 하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: select, case 키워드: 메뉴, 선택 사용처: 간단한 메뉴를 표시하고 사용자가 조작하게 만들고 싶을 때 실행예제 $ ./bash-select.sh 1) list file 2) current directory 3) exit Menu: 2 /home/park/bin Menu: 3 <------ 사용자가 3을 입력하면 스크립트 종료 스크립트 #!/bin/bash # 메뉴 프롬프트 정의 PS3='Menu ' #------------------------------ 1 # 메뉴 표시 정의. 메뉴 각 항목...

Read more