Korean English Japanese Chinese (Simplified) Chinese (Traditional)

 

 

 

/*  Program은 Scheduler job에 관한 metadata를 포함하는 Oracle Scheduler의 일부분이다. Program은 프로시저가 될 수도 있고, PL/SQL 블록이 될 수도 있고, OS 커맨드가 될 수도 있다. 쉽게 말해서, Program은 Job을 쉽게 생성할 수 있게 해주는 일종의 Preferred Credential과 역할이 비슷한 것으로 보면 되겠다.*/

 

/* 이번 실습에서는 /home/oracle 폴더의 디렉토리의 size를 로그파일에 써 놓는 쉘 스크립트를 작성할 것이다. Program은 job에 의해 자동화되어 실행될 것이다. */

 

 

 

 

 

 

/* 실습에서 사용할 주요 Linux 명령어: awk, tail */

 

출처:

 

리눅스 awk 명령어 사용법. (Linux awk command) - 리눅스 파일 텍스트 데이터 검사, 조작, 출력.

1. awk 명령어. 대부분의 리눅스 명령들이, 그 명령의 이름만으로 대략적인 기능이 예상되는 것과 다르게, awk 명령은 이름에 그 기능을 의미하는 단어나 약어가 포함되어 있지 않습니다. awk는 최

recipes4dev.tistory.com

 

 

[Linux] 리눅스 tail 명령어 사용법 (실시간 로그 보기)

리눅스에서 tail 명령어는 일반적으로 로그와 같이 시간에 따라 변하는 파일들을 grep과 같은 명령어로 조합해서 실시간으로 업데이트되는 로그를 분석하는데 많이 사용됩니다. tail 명령어 tail 명

coding-factory.tistory.com

 

awk 명령어에 관해 잘 설명된 그림이다.

 

 

tail 명령어의 옵션에 관한 설명이다.

 

 

 

 

 

 

 

난이도: 

문제 1:  /home/oracle 디렉토리의 size를 추출하고, OS파일에 결과를 작성하는 Program을 작성하라. 간단한 Job을 생성하고 이 프로그램을 사용하여라. (15분)

 

 

1. Program에 지정할 쉘 스크립 파일을 생성한다.

쉘 스크립트 파일을 생성하기에 앞서 /home/oracle 디렉토리의 size 용량만큼만 추출하는 코드를 작성한다.

/* df -h '/home/oracle' : 해당 디렉토리의 총 용량, size 등 정보를 나타냄 */
/* tail -1 : 맨 뒷줄에서 첫 번째 줄만 출력 */
/* awk '{print $4+0}' : 뒤의 'G'를 빼고 네 번째 열의 값만 출력 */

# df -h '/home/oracle' | tail -1 | awk '{print $4+0}'

쉘 코드 파일을 생성한다.

/* /bin/bash 파일을 이용하여 /home/oracle/ 디렉토리의 size를 추출한 값을 home_size 변수에 저장하고,
 그 값을 /home/oracle/free_space.log에 저장하는 구성이다. */

#!/bin/bash
home_size=$(df -h '/home/oracle' | tail -1 | awk '{print $4+0}')
echo "Free Space at /home/oracle is : " $home_size "GB" > /home/oracle/free_space.log
/* 쉘 스크립트 파일을 실행 가능하도록 권한을 설정해준다. */

$ chmod -R 777 /home/oracle/free_space.sh

 

 

 

 

2. 쉘 스크립트 파일을 이용한 Program을 만들고, 그 Program을 Job에 지정한다.

Administration -> Oracle Scheduler -> Programs
Executable Name에 방금 지정한 쉘 스크립트 파일의 디렉토리를 입력한다.
Show SQL을 누르면 Program을 생성하는 SQL문을 체크할 수 있다.
이번엔 Administration -> Oracle Scheduler -> Jobs에서 Job을 생성하러 가보자.
Command Type를 이번엔 Program으로 지정한다.
방금 생성한 Program 이름을 지정한다.

 

 

 

3. 방금 생성한 Job은 실행될 때마다 Program을 실행하는 것과 같다. Job 실행 상태와 결과를 확인하자.

Oracle Scheduler Job 화면에서 MY_PROGRAM_JOB이 SUCCESSED로 표시되고 있다.

 

 

If you like this post, please give me a ❤️...!
 
✰Popular Posts✰
✰Recent Posts✰
 

❤ Seoul, Daejeon, Tokyo, Fukuoka
Site developed by Ryu Hyunwoo