/* 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
난이도: ★★★★☆
문제 1: /home/oracle 디렉토리의 size를 추출하고, OS파일에 결과를 작성하는 Program을 작성하라. 간단한 Job을 생성하고 이 프로그램을 사용하여라. (15분)
1. Program에 지정할 쉘 스크립 파일을 생성한다.
/* 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에 지정한다.
3. 방금 생성한 Job은 실행될 때마다 Program을 실행하는 것과 같다. Job 실행 상태와 결과를 확인하자.
'Oracle > OCM Journey' 카테고리의 다른 글
2-11 OEM - Configure Cloud Control for business requirements (0) | 2023.03.15 |
---|---|
2-10 OEM - Create Job Classes (0) | 2023.03.14 |
2-8 OEM - Assigning Jobs to Windows (0) | 2023.03.12 |
2-7 OEM - Create Schedules (0) | 2023.03.11 |
2-6 OEM - Create Scheduler jobs (0) | 2023.03.10 |