Java에서 파일의 owner가 누구인지 확인하는 방법을 소개합니다.
1. File Owner ?
파일의 소유자를 File Owner라고 합니다.
Linux의 경우, ls 명령어로 파일의 owner가 누구인지 확인할 수 있습니다. 아래 결과를 보시면, 이 파일의 Owner 이름은 js이고, Group 이름은 js입니다.
$ ls -al sample.txt
-rwxrwxrwx 1 js js 0 10월 10 12:06 sample.txtOwner, Group라는 개념이 있고, 이것에 해당하지 않는 것을 Others라고 합니다. 시스템은 Owner, Group, Others에 각각 다른 파일 접근 권한을 부여할 수 있습니다.
2. Java에서 File Owner 확인
Java에서 Files.getOwner()로 파일의 Owner 정보를 확인할 수 있습니다. 인자로 파일에 대한 Path 객체를 전달해야 합니다.
다음은 어떤 파일의 Owner를 확인하는 예제입니다. 먼저 파일에 대한 Path 객체를 가져오고, 그것을 getOwner()에 전달하여 UserPrincipal 객체를 가져옵니다. UserPrincipal는 파일 owner에 대한 정보를 갖고 있습니다.
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.attribute.UserPrincipal;
public class FileOwnership {
public static void main(String[] args) throws IOException {
Path path = Paths.get("/var/tmp/sample.txt");
UserPrincipal owner = Files.getOwner(path);
System.out.println("Owner: " + owner.getName());
}
}Output:
Owner: jsShell에서 실제 파일의 owner를 확인해보면, 위의 정보와 일치하는 것을 확인할 수 있습니다.
$ ls -al sample.txt
-rwxrwxrwx 1 js js 0 10월 10 12:06 sample.txtReferences
Loading script...
Related Posts
- Java - Unsupported class file major version 61 에러
- Java - String.matches()로 문자열 패턴 확인 및 다양한 예제 소개
- Java - 문자열 공백제거 (trim, replace)
- Java - replace()와 replaceAll()의 차이점
- Java - ArrayList 초기화, 4가지 방법
- Java - 배열 정렬(Sorting) (오름차순, 내림차순)
- Java - 문자열(String)을 비교하는 방법 (==, equals, compare)
- Java - StringBuilder 사용 방법, 예제
- Java - 로그 출력, 파일 저장 방법 (Logger 라이브러리)
- Java IllegalArgumentException 의미, 발생 이유
- Java - NullPointerException 원인, 해결 방법
- Seleninum의 ConnectionFailedException: Unable to establish websocket connection 해결
- Java - compareTo(), 객체 크기 비교
- Java - BufferedReader로 파일 읽기
- Java - BufferedWriter로 파일 쓰기
- Java - BigInteger 범위, 비교, 연산, 형변환
- Java charAt() 함수 알아보기
- Java contains()로 문자(대소문자 X) 포함 확인
- Java - Set(HashSet)를 배열로 변환
- Java - 문자열 첫번째 문자, 마지막 문자 확인
- Java - 문자열 한글자씩 자르기
- Java - 문자열 단어 개수 가져오기
- Java - 1초마다 반복 실행
- Java - 배열을 Set(HashSet)로 변환
- Java - 여러 Set(HashSet) 합치기
- Java - 명령행 인자 입력 받기
- Java - 리스트 역순으로 순회, 3가지 방법
- Java - 특정 조건으로 리스트 필터링, 3가지 방법
- Java - HashMap 모든 요소들의 합계, 평균 계산
- Java - 특정 조건으로 HashMap 필터링
- Java - 싱글톤(Singleton) 패턴 구현
- Java - 숫자 왼쪽에 0으로 채우기
- Java - String 배열 초기화 방법
- Java - 정렬된 순서로 Map(HashMap) 순회
- Java - HashMap에서 key, value 가져오기