디렉토리 속성정보 체크

개요

디렉토리 속성정보인 디렉토리명, 생성일자(최종수정일자), 소유계정, 읽기권한, 쓰기권한, 접근권한, 사이즈 정보를 확인한다.

본 기능은 전자정부 표준프레임워크 공통컴포넌트 요소기술 내에 구성되어 있다.

설명

  ① 디렉토리명을 확인하는 기능
  ② 디렉토리 최종수정일자를 확인하는 기능
  ③ 디렉토리의 소유계정을 확인하는 기능
  ④ 디렉토리의 읽기권한을 확인하는 기능
  ⑤ 디렉토리의 쓰기권한을 확인하는 기능
  ⑥ 디렉토리의 접근권한을 확인하는 기능
  ⑦ 디렉토리의 사이즈를 확인하는 기능
관련소스
유형대상소스명설명비고
Serviceegovframework.com.utl.service.EgovFileTool.java파일관리 요소기술 클래스
JSPWEB_INF/jsp/egovframework/cmm/utl/EgovDrctryInfoCeck.jsp테스트 페이지
메소드
결과값메소드명설명내용
StringgetName(String targetDirPath)디렉토리명 조회디렉토리명을 조회한다. 성공시 디렉토리명, 실패시 블랭크를 리턴
StringgetLastModifiedDateFromFile(String targetDirPath)디렉토리 수정일자 조회디렉토리 최종수정일자를 조회한다. 성공시 년월일의 8자리 문자열, 실패시 블랭크 리턴
StringgetOwner(String targetDirPath)디렉토리 소유자 조회디렉토리의 소유자계정명을 조회한다. 성공시 소유계정명, 실패시 블랭크를 리턴한다.
booleancanRead(String targetDirPath)디렉토리 읽기권한 조회디렉토리의 읽기권한을 조회한다. 읽기 권한 있으면 true, 없으면 false 리턴
booleancanWrite(String targetDirPath)디렉토리의 쓰기권한 조회디렉토리의 쓰기권한을 조회한다. 쓰기 권한 있으면 true, 없으면 false 리턴
StringgetAccess(String targetDirPath)디렉토리 접근권한 조회디렉토리의 접근권한을 조회한다. 성공시 사용자,그룹,기타유저의 읽기쓰기실행권에 대한 문자열을 리턴, 실패시 블랭크를 리턴
longgetDirectorySize(String targetDirPath)디렉토리 용량조회디렉토리의 용량을 조회한다. 디렉토리내의 파일과 하위디렉토리들의 파일 사이즈 합계수치를 조회한다. byte단위 사이즈수치를 리턴
Input
  • targetDirPath: String 타입의 절대경로를 포함하는 확인대상 디렉토리경로(예, /product/jeus/egovProps/tmp/dir1)
Output
  • String 타입 : 항목별로 확인된 속성정보
  • boolean 타입 : 권한유무 true / false
  • long 타입 : 사이즈정보(byte단위)

환경설정

getOwner, getAccess 메소드는 쉘스크립트의 실행결과를 활용하여 정보를 확인한다. 호출시 활용되는 쉘스크립트의 정보는 globals.properties에 등록한다.

  • globals.properties
#1. getOwner 메소드에 해당되는 쉘 스크립트
SHELL.UNIX.getDrctryOwner = /product/jeus/egovProps/prg/getDrctryOwner.sh
#2. getAccess 메소드에 해당되는 쉘 스크립트
SHELL.UNIX.getMoryInfo = /product/jeus/egovProps/prg/getDrctryAccess.sh
  • getDrctryOwner.sh (유닉스용 디렉토리 소유자 조회 스크립트)
ls -alF $1 | grep $2  | awk -F" " '{print $3}'
  • getDrctryAccess.sh (유닉스용 디렉토리 접근권한 조회 스크립트)
ls -alF $1 | grep $2 | awk -F" " '{print $1}'

사용방법

    import egovframework.com.utl.sim.service.EgovFileTool;
 
    String targetDirPath1    = "user/com/jeus";
    String directoryName1    = EgovFileTool.getName(targetDirPath1);
    String lastModifiedDate1 = EgovFileTool.getLastModifiedDateFromFile(targetDirPath1);
    String owner1            = EgovFileTool.getOwner(targetDirPath1);
    boolean canRead1         = EgovFileTool.canRead(targetDirPath1);
    boolean canWrite1        = EgovFileTool.canWrite(targetDirPath1);
    String roleStr           = EgovFileTool.getAccess(targetDirPath1);
    long dirSize1            = EgovFileTool.getDirectorySize(targetDirPath1);

참고자료

N/A

 
egovframework/디렉토리속성정보체크.txt · 마지막 수정: 2023/12/21 05:21 (외부 편집기)
 
이 위키의 내용은 다음의 라이센스에 따릅니다 :CC Attribution-Noncommercial-Share Alike 3.0 Unported
전자정부 표준프레임워크 라이센스(바로가기)

전자정부 표준프레임워크 활용의 안정성 보장을 위해 위험성을 지속적으로 모니터링하고 있으나, 오픈소스의 특성상 문제가 발생할 수 있습니다.
전자정부 표준프레임워크는 Apache 2.0 라이선스를 따르고 있는 오픈소스 프로그램입니다. Apache 2.0 라이선스에 따라 표준프레임워크를 활용하여 발생된 업무중단, 컴퓨터 고장 또는 오동작으로 인한 손해 등에 대해서 책임이 없습니다.
Recent changes RSS feed CC Attribution-Noncommercial-Share Alike 3.0 Unported Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki