분류 전체보기980 [Linux 셸 스크립트] 변환처리 - 022 히어 도큐먼트에서 변수 확장하지 않고 그대로 $str처럼 표시하기 1. 사용 명령어 (1) cat 2. 키워드 & 사용처 (1) 키워드 히어 도큐먼트, 따옴표, 파라미터 확장, 명령어 치환, 텍스트 (2) 사용처 히어 도큐먼트 본체에 `(그레이브)를 $로 사용하는데 확장하지 않고 그대로 출력하고 싶을 때 사용합니다. 3. 실행 예제 $ ./here.sh 여기는 히어 도큐먼트 본체입니다. 이 부분에 적힌 문자열은 명령어 표준 출력에 직접 리다이렉트됩니다. 종료 문자열을 작은따옴표 기호로 감싸면 $str이라고 적어도 변수 확장되지 않으며 `echo abc`도 명령어 치환되지 않습니다. 4. 스크립트 #!/bin/sh # 이 변수는 확장되지 않으므로 실제로는 사용되지 않음 str="Dummy" cat 2021. 3. 11. [Linux 셸 스크립트] 변환처리 - 021 미정의 변수를 에러로 처리해서 실수 방지하기 1. 사용 명령어 (1) set 2. 키워드 & 사용처 (1) 키워드 미정의, 변수, 에러, 빈 문자열 (2) 사용처 스크립트에서 정의 안 된 변수를 사용하면 에러 종료하고 싶을 때 사용합니다. 3. 실행 예제 ./set-u.sh ./set-u.sh: line 7: COP_DIR: unbound variable 4. 스크립트 #!/bin/sh set -u ① COPY_DIR=/myapp/work # COPY_DIR이 아니라 COP_DIR이라고 실수함 cp myapp.log $COP_DIR 5. 해설 이 스크립트는 변수명을 잘못 타이핑해서 미정의 변수를 쓰게 될 때 에러를 표시하는 예제입니다. 실행하면 "unbound variable" 이라는 에러가 표시됩니다. 보통 셸 스크립트에서는 선언되지 않은 변수를.. 2021. 3. 11. 지역화폐 122탄 - 경북 경산시(경산사랑애카드) 1. 경산사랑애상품권 지역 내 소비를 진작시키고 지역자금의 관외유출을 방지하여 경기침체 심화로 어려움을 겪고 있는 골목상권과 상점가 및 전통시장 등 지역경제를 살리기 위해 경산시에서 발행하는 충전식 카드형 지역화폐입니다. (1) 발행일(일반시민 판매) 2020. 5. 15.(금) 09:00~ (2) 발급대상 본인 명의의 은행계좌를 가지고 있는 만14세 이상 누구나 (3) 구매(충전)방법 방법1. 지역화폐 앱 ‘그리고’ 설치후 회원등록 및 카드신청 방법2. 오프라인 판매대행점 방문(판매대행점은 아래 내용 참조) ※ 최소 구입(충전) 가능 금액은 5만원 (4) 사용혜택 충전혜택 구매(충전)금액 10% 선불 지급 ※ 시행일자 : 2021. 1. 1.부터 혜택한도 1인 월 70만원 / 연간 700만원 인센티브 .. 2021. 3. 10. [Linux 셸 스크립트] 변환처리 - 020 명령어 출력 결과를 파일명에 포함해서 그 파일명을 대상으로 명령어를 실행할 때 보기 쉽게 하기 1. 사용 명령어 (1) hostname (2) grep 2. 키워드 & 사용처 (1) 키워드 명령어 치환, 끼워넣기, 네스트 (2) 사용처 명령어 치환 처리를 끼워 넣고(네스트) 싶을 때 사용합니다. 3. 실행 예제 $ ./comsub.sh Error counts: 2 4. 스크립트 #!/bin/sh err_count=$(grep -c "ERROR" /var/log/myapp/$(hostname).log ① echo "Error counts: $err_count" 5. 해설 이 스크립트는 hostname 명령어로 파일명을 조합한 로그 파일에서 ERROR라는 문자열을 검색하여 칠치한 줄을 표시합니다. 검색과 카운터에는 grep 명령어의 -c 옵션을 사용합니다. 예제에서 명령어 치환을 할 때 검색 대상 로.. 2021. 3. 5. [Linux 셸 스크립트] 변환처리 - 019 언더스코어 등을 포함한 문자열에서 변수를 명확하게 구분하기 1. 사용 명령어 (1) wc 2. 키워드 & 사용처 (1) 키워드 변수명, 문자열, 구분 (2) 사용처 변수명 뒤에 이어진 문자열과 변수명을 명확하게 구분하고 싶을 때 사용합니다. 3. 실행 예제 $ ./varname.sh 342 20210305_log 4. 스크립트 #!/bin/sh today="20210305" # 셸 변수 today가 확장됨 wc -l ${today}_log 5. 해설 이 스크립트는 20210305_log라는 로그 파일의 줄 수를 표시합니다. wc 명령어는 파일 문자열과 줄 수를 조사하는 명령어로 -l 옵션을 쓰면 파일 줄 수를 표시합니다. 여기서 파일명이 "셸 변수명 + 언더스코어 +log"라는 셸 변수명 뒤에 언더스코어가 올 때 주의점을 살펴봅시다. 셸 스크립트 변수명으로 사용.. 2021. 3. 5. [Linux 셸 스크립트] 변환처리 - 018 HTML 파일에서 태그 속에 적힌 주석을 추출해서 그대로 실행하기 1. 사용 명령어 (1) sed (2) eval 2. 키워드 & 사용처 (1) 키워드 명령어, 변수 확장 (2) 사용처 파일에 적힌 문자열을 추출해서 명령어로 실해앟고 싶을 때 사용합니다. 3. 실행 예제 $ ./eval.sh Fri Mar 5 17:35:20 JST 2021 -rw-rw-r--. 1 user1 user1 11968 Oct 26 12:32 myapp.log 4. 스크립트 #!/bin/sh filename="myapp.log" eval $(sed -n "s/\(.*\)/\1/p" command.htm) 5. 해설 이 스크립트는 command.htm 파일 안에 적힌 태그를 추출해서 그 요소를 명령어로 실행합니다. command.htm 파일 내용은 아래와 같습니다. This is a sampl.. 2021. 3. 5. [Linux 셸 스크립트] 변환처리 - 017 문자 속 공백문자를 포함한 문자열 변수를 인수로 쓰기 1. 사용 명령어 (1) echo 2. 키워드 & 사용처 (1) 키워드 공백문자, 스페이스, 문자열, 큰따옴표 (2) 사용처 공백문자(스페이스)를 포함한 문자열을 한 문장으로 다루고 싶을 때 사용합니다. 3. 실행 예제 $ ./space-str.sh ERROR: invalid value 4. 스크립트 #!/bin/sh result="invalid value" if [ "$result" = "invalid value" ]; then ① echo "ERROR: $result" 1>&2 exit 1 fi 5. 해설 이 스크립트는 공백문자를 포함한 문자열을 if문으로 비교해서 값이 "invalid value"라는 문자열일 때 에러를 출력합니다. 공백을 포함한 문자열 취급이 핵심입니다. 셸 스크립트에서 변수 구분.. 2021. 3. 5. [Linux 셸 스크립트] 변환처리 - 016 변수나 함수를 외부 파일로 작성하기 1. 사용 명령어 (1) .(닷 명령어) 2. 키워드 & 사용처 (1) 키워드 외부 파일, 읽기, 정의 파일 (2) 사용처 여러 셸 스크립트에서 공통된 설정값이나 함수를 사용하는데 그런 값과 함수를 외부 파일로 정의하고 싶을 때 사용합니다. 3. 실행 예제 $ ./source.sh 13:13:13 large-file.tar.gz -> /var/tmp/large-file.tar.gz 13:13:53 4. 스크립트 #!/bin/sh . ./env.sh ① nowtime cp -i -v large-file.tar.gz "$WORK_DIR" nowtime 5. 해설 이 스크립트는 지정한 작업 디렉터리에 큰 파일을 복사해서 그 처리 시간을 측정하는 간단한 예제입니다. large-file.tar.gz는 파일 크기가.. 2021. 3. 5. [Linux 셸 스크립트] 변환처리 - 015 작은따옴표 안에서 작은따옴표 쓰기 1. 사용 명령어 (1) echo 2. 키워드 & 사용처 (1) 키워드 문자열, 큰따옴표, 작은따옴표 (2) 사용처 작은따옴표로 둘러싼 문자열 안에서 변수 확장이나 작은따옴표 기호를 사용하고 싶을 때 사용합니다. 3. 실행 예제 $ ./single-quote.sh It costs $100? I can't believe it! 4. 스크립트 #!/bin/sh price=100 str='It costs $'price'? I can'\''t believe it!' ① echo $str 5. 해설 이 스크립트는 셸 변수 str 내용을 echo 명령어로 표시합니다. 변수 str에 대입할 때 문자열 전체를 작은따옴표로 둘러싸고 있는데 거기에 셸 변수 price 확장이나 작은따옴표 기호 자체를 다루는 예제입니다. 셸.. 2021. 3. 5. [Linux 셸 스크립트] 변환처리 - 014 값이 정수인지 확인해서 계산하기 1. 사용 명령어 (1) test (2) expr 2. 키워드 & 사용처 (1) 키워드 숫자 확인, 인수 확인, 에러 처리 (2) 사용처 expr 명령어 등으로 계산하기 전에 변수값이 정수인지 확인하고 싶을 때 사용합니다. 3. 실행 예제 $ ./int-check.sh 100a Argument is not Integer. $ ./int-check.sh 100 Argument is Integer. 110 4. 스크립트 #!/bin/sh # 인수가 정수인지 확인 test "$1" -eq 0 2>/dev/null ① if [ $? -lt 2 ]; then ② echo "Argument is Integer." expr 10 + $1 else echo "Argument is not Integer." exit 1 .. 2021. 3. 5. 이전 1 ··· 30 31 32 33 34 35 36 ··· 98 다음