'분류 전체보기' 카테고리의 글 목록 (31 Page)
본문 바로가기

분류 전체보기980

[Linux 셸 스크립트] 파일처리 - 034 파일들을 다른 디렉터리에 동기화해서 백업처리하기 1. 사용 명령어 (1) rsync 2. 키워드 & 사용처 (1) 키워드 백업, 동기, 차분, 원격 백업 (2) 사용처 매일 새로운 로그 파일이 생성되는 등 파일이 늘어나는 디렉터리를 효과적으로 백업하고 싶을 때 사용합니다. 3. 실행 예제 $ ls /home/park/myapp/log 로그 파일 확인 20210316.log20210317.log20210318.log $ ./rsync.sh sending incremental file list log/ log/20210318.log sent 100bytes received 20 bytes 678.00 bytes/sec total size is 345 speedup is 1.41 4. 스크립트 #!/bin/sh log_dir="/home/park/myapp.. 2021. 3. 18.
[Linux 셸 스크립트] 파일처리 - 033 파일을 백업할 때 파일명에 날짜 넣기 1. 사용 명령어 (1) date (2) cp 2. 키워드 & 사용처 (1) 키워드 백업, 현재 시각, 날짜 (2) 사용처 어떤 파일을 백업할 때 현재 날짜를 넣어서 간단히 복사해두고 싶을 때 사용합니다. 3. 실행 예제 $ ls파일 확인 datename.shmyapp.conf $ ./datename.sh스크립트 실행 myapp.conf -> myapp.conf.20210318 $ ./datename.sh스크립트 실행 myapp.conf -> myapp.conf.202103182210.20 $ ls파일 확인 datename.shmyaapp.confmyapp.conf.20210318myapp.conf.202103182210.20 4. 스크립트 #!/bin/sh config="myapp.conf" bak_f.. 2021. 3. 18.
[Linux 셸 스크립트] 파일처리 - 032 로그 파일이 엄청 많은 디렉터리에서 파일들에 명령어를 일괄 실행하기 1. 사용 명령어 (1) find (2) xargs (3) grep 2. 키워드 & 사용처 (1) 키워드 인수, 명령행 인수, 대량 파일 (2) 사용처 파일이 너무 많아 단순히 *로 파일을 지정하면 에러가 발생하는 상황에서 grep 명령어 등을 실행하고 싶을 때 사용합니다. 3. 실행 예제 $ ./xargs-grep.sh /var/log/myapp/a.log:2021-03-14 12:13:15 [ERROR] File Not Found. /var/log/myapp/b.log:2021-03-15 01:11:34 [ERROR] I/O Error. /var/log/myapp/c.log:2021-03-16 21:31:45 [ERROR] File Not Found. 4. 스크립트 #!/bin/sh logdir="/.. 2021. 3. 18.
[Linux 셸 스크립트] 파일처리 - 031 작업 파일 디렉터리에서 1년 이상 갱신되지 않은 파일 삭제하기 1. 사용 명령어 (1) find (2) xargs 2. 키워드 & 사용처 (1) 키워드 갱신일, 날짜, 파일 삭제, 자동 삭제 (2) 사용처 오랫동안 변경되지 않은 파일이나 오래된 로그 파일을 삭제하고 싶을 때 사용합니다. 3. 실행 예제 $ ./find-del.sh 현재 날짜가 2021년 03월 18일이라면 /var/log/myapp/202003171112.log /var/log/myapp/202003161229.log /var/log/myapp/202003151931.log 4. 스크립트 #!/bin/sh logdir="/var/log/myapp" # 최종 갱신일이 1년 이상된 오래된 파일 삭제 find $logidr -name "*.log" -mtime +364 -print | xargs rm -.. 2021. 3. 18.
[Linux 셸 스크립트] 파일처리 - 030 특정 디렉터리에서 n일 전부터 m일 전까지 변경된 파일 목록 얻기 1. 사용 명령어 (1) find 2. 키워드 & 사용처 (1) 키워드 어제, 그저께, 날짜, 타임스탬프, mtime (2) 사용처 특정 기간에 작성, 변경되니 파일 목록을 만들고 싶을 때 사용합니다. 3. 실행 예제 # 현재 시각이 2021년 3월 17일 20:00으로 가정 $ ./find-mtime.sh /var/log/myapp/202103132346.log /var/log/myapp/202103140543.log /var/log/myapp/202103141021.log /var/log/myapp/202103150111.log /var/log/myapp/202103150252.log 4. 스크립트 #!/bin/sh logdir="/var/log/myapp" # 4일 전부터 2일 전까지 갱신된 파일 .. 2021. 3. 18.
[Linux 셸 스크립트] 파일처리 - 029 여러 HTML 파일에서 title 태그만 추출해서 각각 다른 파일로 출력하기 1. 사용 명령어 (1) basename (2) sed 2. 키워드 & 사용처 (1) 키워드 for문, 파일 목록, HTML 태그, 다른 파일 (2) 사용처 여러 HTML 파일에서 특정 요소만 추출해서 HTML 파일마다 다른 파일로 출력하고 싶을 때 사용합니다. 3. 실행 예제 $ ls output/ $ ./htmltitle.sh $ ls output/ about.txt index.txt menu.txt 4. 스크립트 #!/bin/sh # 현재 디렉터리에 있는 .html 파일이 대상 for htmlfile in *.html ① do # 파일명에서 확장자를 뺀 문자열 취득 fname=$(basename $htmlfile .html) ② # 태그 내용을 후방참조\1로 추출, 파일 출력 sed -n "s/^... 2021. 3. 18.
지역화폐 130탄 - 경북 성주군(성주사랑상품권, 성주사랑카드) 1. 성주사랑상품권 (1) 성주사랑상품권 안내 기간 : 2021. 1. 20.(수) 09:00 ~ 예산 소진 시까지 할인율 : 10% *개인만 해당됩니다. 단체, 기업 등은 할인적용 불가합니다. 구입한도 : 지류형 - 월 50만원, 카드형 - 월 50만원 (연간 총 600만원 한도) 구입처 : 지류형 - 농협성주군지부, 군출장소, 대구은행성주지점, 읍면농협, 원예농협, 새마을금고, 성주신협, 산림조합(16개소) 카드형 - 앱'지역상품권 CHAK' 또는 관내 농협 (2) 성주사랑상품권 사용처 성주사랑상품권 가맹점 현황 (3) 성주사랑상품권 가맹점 신청 안내 1. 사업자등록증 사본 1통, 2. 상호를 넣은 통장사본 1통(농협,대구은행,새마을금고,신협통장) 3. 대표자 신분증 - 대리자 : 위임시 대표자 신분.. 2021. 3. 18.
[Linux 셸 스크립트] 파일처리 - 028 신규 파일을 만들지 않고 이미 있는 파일만 파일 갱신일을 바꾸기 1. 사용 명령어 (1) touch 2. 키워드 & 사용처 (1) 키워드 타임 스탬프, 신규 파일, 갱신일 (2) 사용처 touch 명령어로 타임스탬프를 갱신하는 초기화 스크립트 등에서 존재하지 않는 파일은 새롭게 만들고 싶지 않을 때 사용합니다. 3. 실행 예제 $ ./touch.sh 4. 스크립트 #!/bin/sh # [YYYYMMDDhhmm.SS]로 [년월일시분.초] 지정 timestamp="202103171723.30" # 파일 타임스탬프 갱신 # -c 옵션이 있으므로 lock 파일은 신규 파일을 만들지 않음 touch -t $timestamp app1.log ① touch -c $timestamp lock.tmp ② 5. 해설 이 스크립트는 app1.log와 lock.tmp라는 두 파일의 타임스.. 2021. 3. 17.
[Linux 셸 스크립트] 파일처리 - 027 파일 내용을 삭제해서 빈 파일로 만들기 1. 사용 명령어 (1) :(널 명령어) (2) uptime (3) sleep 2. 키워드 & 사용처 (1) 키워드 빈 파일, 초기화 (2) 사용처 스크립트 시작할 때 기록 파일, 임시 파일을 초기화하고 싶을 때 사용합니다. 3. 실행 예제 $ ./null.sh 4. 스크립트 #!/bin/sh # uptime 명령어 기록 파일 정의 uptimelog="uptime.log" # 널 명령어로 빈 파일로 초기화 : > $uptimelog ① # 10초마다 6번, uptime 명령어 실행 for i in 1 2 3 4 5 6 ② do uptime >> $uptimelog ③ sleep 10 done 5. 해설 이 스크립트는 현재 서버 부하 상태를 확인합니다. 로드 평균치(서버 부하)를 출력하는 uptime 명령.. 2021. 3. 17.
[Linux 셸 스크립트] 파일처리 - 026 디렉터리에 있는 파일과 디렉터리 수 조사하기 1. 사용 명령어 (1) find (2) wc 2. 키워드 & 사용처 (1) 키워드 파일 수, 디렉터리 수, 카운트 (2) 사용처 작업 디렉터리 등 여러 파일이 있는 디렉터리에서 파일 수, 디렉터리 수를 세고 싶을 때 사용합니다. 3. 실행 예제 $ ./findcount.sh 대상 디렉터리: /home/park/myapp/work 파일 수: 4 디렉터리 수: 2 4. 스크립트 #!/bin/sh targetdir="home/park/myapp/work" filecount=$(find "$targetdir" -maxdepth 1 -type f -print | wc -l) ① dircount=$(find "$targetdir" -maxdepth 1 -type d -print | wc -l ① dircount=.. 2021. 3. 17.