Home

제어 구문 예제_04 ID 컬럼을 "00001" 처럼 0으로 채운 CSV 파일에서 번호를 지정해서 값을 추출하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: read, cut, test 키워드: 숫자값, 문자열, 0 채우기 사용처: “00001” 처럼 0으로 채운 문자열을 그대로 숫자로 다루고 싶을 때 실행예제 $ cat data.csv 00001,Busan 2,Kim 3,Park 00004,Seo $ ./zero-string.sh Busan <------------------ ID 번호가 1인 값을 출력 스크립트 #!/bin/sh # 추출 조건 등 정의 match_id=1 # 추출할 ID -------------------- 1 csvfil...

Read more

제어 구문 예제_03 강제 종료될 때까지 파일 내려받기를 반복해 통신 확인하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: true, curl, sleep 키워드: 무한 반복, 접속 확인, 내려받기 사용처: 웹 서버 확인을 계속 반복하고 싶을 때 실행예제 $ ./download-loop.sh [check OK] [check OK] [check OK] [check OK] [check OK] ^C <------------------ Ctrl + C 키를 입력할 때까지 계속 실행 스크립트 #!/bin/sh # 확인 대상 URL url=http://192.168.22.1/webapl/check #-------- 1 # 무한 반복 시작...

Read more

제어 구문 예제_02 연속된 파일명을 가진 URL을 자동 생성해서 순서대로 내려받기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: seq, printf, curl 키워드: 연속번호, URL, 내려받기 사용처: 파일명에 연속한 번호가 있는 그림 파일을 웹 서버에서 자동으로 내려받고 싶을 때 실행예제 $ ./number-file.sh <------ URL을 자동 생성해서 내려받기함 스크립트 #!/bin/sh url_template=http://www.example.org/download/img_%03d.jpg #--- 1 # seq 명령어로 연속 번호 생성 for i in $(seq 10) #-----------------------...

Read more

제어 구문 예제_01 변수가 포함된 IP 주소 목록 파일을 읽어서 ping 명령어로 확인하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: sed, ping 키워드: for문, 템플릿 파일, 치환, 변수 사용처: 템플릿 파일을 사용해서 네트워크 개통을 확인하고 싶을 때 실행예제 $ cat ping_target.lst <------------- 템플릿 파일 %ADDR_HEAD%.1 %ADDR_HEAD%.2 %ADDR_HEAD%.3 %ADDR_HEAD%.4 $ ./for_command.sh 192.168.2 [Success] ping -> 192.168.2.1 [Success] ping -> 192.168.2.2 [Failed] ping -> 1...

Read more

쉘기능을 자유자재로 다루기_12 셸 스크립트 일부에 Perl이나 Ruby 사용하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: perl, nc, sleep 키워드: 한 줄 명령어, 펄, 루비, 난수 사용처: 난수 생성 등 셸 스크립트 기능 일부로 펄이나 루비 코드를 사용하고 싶을 때 실행예제 $ ./perl-oneline.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/sh # 테스트 통신할 서버 정의 ipaddr="192.168.2.1" p...

Read more

쉘기능을 자유자재로 다루기_11 여러 호스트에 병렬로 ping을 날려서 대기 시간 줄이기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: ping, wait, cat 키워드: 병렬 처리, 동기, 종료 사용처: 여러 호스트에 ping 명령어를 실행하는 대기 시간을 줄이고자 병렬로 백그라운드 실행시키고 명령어 종료를 동기화해서 결과를 순서대로 출력하고 싶을 때 실행예제 $ ./background-wait.sh PING 192.168.2.1 (192.168.2.1): 56 data bytes 64 bytes from 192.168.2.1: icmp_seq=0 ttl=255 time=3.554 ms 64 bytes from 192.168.2.1: icmp_seq=0 tt...

Read more

쉘기능을 자유자재로 다루기_10 여러 URL 파일을 동시에 병렬로 내려받기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: curl 키워드: 백그라운드, 병렬 처리, 내려받기 사용처: 대기 시간이 있는 명령어가 많아서 병렬로 실행해 전체 실행 시간을 줄이고 싶을 때 실행예제 $ ./background-download.sh $ <-------------------------- 파일 내려받기 완료를 기다리지 않고 바로 셸에 제어가 들어옴 스크립트 #!/bin/sh # 병렬로 여러 사이트에서 내려받기 # 각각 백그라운드에서 처리 curl -sO http://www.example.org/download/bigfile.dat &...

Read more