변환 처리_06 변수나 함수를 외부 파일로 작성하기
출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어
명령어: .(닷 명령어)
키워드: 외부 파일, 읽기, 정의 파일
사용처: 여러 셸 스크립트에서 공통된 설정값이나 함수를 사용하는데 그런 값과 함수를 외부 파일로 정의하고 싶을 때
실행예제
$ ./source.sh
21:24:49
large-file.tar.gz -> /var/tmp/myapp/large-file.tar.gz
21:24:57
스크립트
#!/bin/sh
. ./env.sh #------------- 1
nowtime
cp -i -v large-file.tar.gz "$WORK_DIR"
nowtime
...
변환 처리_05 작은따옴표 안에서 작은따옴표 쓰기
출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어
명령어: echo
키워드: 문자열, 큰따옴표, 작은따옴표
사용처: 작은따옴표로 둘러싼 문자열 안에서 변수 확장이나 작은따옴표 기호를 사용하고 싶을 때
실행예제
$ ./single-quote.sh
It costs $100? I can't believe it!
스크립트
#!/bin/sh
price=100
str='It costs $'$price'? I can'\''t believe it!' #----- 1
해설
이 스크립트는 셸 변수 str 내용을 echo 명령어로 표시합니다. 변수 str에 대입할 때 문자열 ...
변환 처리_04 값이 정수인지 확인해서 계산하기
출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어
명령어: test, expr
키워드: 숫자 확인, 인수 확인, 에러 처리
사용처: expr 명령어 등으로 계산하기 전에 변수값이 정수인지 확인하고 싶을 때
실행예제
$ ./int-check.sh 100a
Argument is not Integer.
$ ./int-check.sh 100
Argument is Integer.
110
스크립트
#!/bin/sh
# 인수가 정수인지 확인
test "$1" -eq 0 2>/dev/null #------------- 1
if [ $? -lt 2 ]; then #------...
변환 처리_03 HTML 파일에서 특정 속성값 얻기
출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어
명령어: expr
키워드: 패턴 매치, 문자열, HTML, 속성
사용처: 변수 내부 문자열에서 특정 패턴과 일치하는 부분을 추출할 때
실행예제
$ ./expr-match.sh
/about/
/sitemap/
/plan1.html
http://www.example.org/
스크립트
#!/bin/sh
quote="[\"']" #------------------------------------------------------ 1
match="[^\"']*" #-------------------------------------...
변환 처리_02 지역 변수를 함수 안에 정의해서 호출한 곳의 변수가 파괴되지 않게 하기
출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어
명령어: ls, local
키워드: 지역 변수, 전역 변수, 스코프
사용처: 함수 내부에서 변수를 다룰 때 호출한 곳에 영향을 주지 않도록 지역 변수로 정의하고 싶을 때
실행예제
$ ./local-var.sh
directory: /home/user1/logdir
20131020.log 20131022.log
directory: /var/tmp
tmp.dat tmp.3113
스크립트
#!/bin/sh
DIR=/var/tmp
ls_home()
{
# 변수 DIR을 함수 내부 변수로 정의
local DIR #----...
변환 처리_01 실행 시 변수값이 비어 있을 때 기본값을 정의해서 설정하기
출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어
명령어: cp, tar
키워드: 미정의, 기본값
사용처: 환경 변수가 설정되었으면 그 값을 쓰고 설정되지 않았으면 스크립트에서 정한 기본값을 사용하고 싶을때
실행예제
$ ./var-parameter.sh
Extract files to /var/tmp
스크립트
#!/bin/sh
cp largefile.tar.gz ${TMPDIR:=/tmp} #---- 1
cd $TMPDIR
tar xzf largefile.tar.gz
echo "Extract files to $TMPDIR."
해설
이 스크립트는 변수 TMP...
제어 구문 예제_06 웹 서버에서 파일을 내려받아서 MD5 해시값 계산하기
출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어
명령어: curl, md5sum
키워드: 내려받기, 종료 스테이터스
사용처: 네트워크 경유로 파일을 취득할 때 복사에 성공했는지 확인해서 다음 명령어를 실행하고 싶을 때
실행예제
$ ./andlist.sh
83036ec1109bf9770fc2d8673b545d35 sample.dat
스크립트
#!/bin/sh
# 내려받을 파일 URL 경로, 파일명 지정
url_path="http://www.example.org/" #------------------------ 1
filename="sample.dat" #--------...
197 post articles, 29 pages.