728x90
반응형

심볼릭 링크가 연결되어 있는 원본 파일을 찾는 명령어이다.

readlink는 심볼릭링크인 path가 가르키는 원본의 파일 이름을 돌려준다. 알아낸 원본 파일을 이름은 buffer에 저장된다.

bufsize는 buffer의 저장 크기이다. 만약 buffer의 크기가 원본 파일의 이름을 담기에 충분히 크지 않다면 나머지 부분은 잘리게 된다.

readlink는 원본 파일의 완전한 경로를 가져온다.

 

사용법

# readlink -{Option} File

 

Example

 

# ls -al test.txt

lrwxrwxrwx 1 root root 13 Oct 25 14:38 test.txt -> /tmp/test.txt

 

# readlink -f test.txt

/tmp/test.txt

 

Options

-f (canonicalize)

  • 주어진 이름의 모든 구성 요소에 있는 모든 심볼릭 링크를 따라가면서 정규화한다. 마지막 구성 요소를 제외하고 모두 존재해야한다.

 

-e (canonicalize-existing)

  • 주어진 이름의 모든 구성 요소에 있는 모든 심볼릭 링크를 따라가며 정규화 한다. 마지막 구성 요소를 제외하고 모두 존재해야한다.

 

-m (canonicalize-missing) 

  • 구성 요소 존재에 대한 요구 사항없이 주어진 이름의 모든 구성 요소에 있는 모든 심볼릭 링크를 따라 정규화한다.

 

 

Return

 

성공할 경우 Buffer에 들어 있는 문자의 갯수가 반환되며 에러가 발생했다면 -1 Return되며 적당한 Error 코드가 설정된다.

 

 

Error

- ENOTDIR

경로가 디렉토리(:12)가 아니다.

 

- EINVAL

bufsize 가 양수가 아닐경우

 

- ENAMETOOLONG

경로이름이 너무 길경우

 

- ENOENT

명명된 파일이 존재하지 않을경우

 

- EACCES

path 에 접근하기 위한 디렉토리 권한이 없을경우

 

- EINVAL

파일이 심볼릭 링크가 아닐때

 

 

참고

https://zetawiki.com/wiki/%EB%A6%AC%EB%88%85%EC%8A%A4_readlink

https://www.joinc.co.kr/w/man/2/readlink

 

 

반응형

'Linux' 카테고리의 다른 글

nf_conntrack_max  (1) 2020.10.25
Linux ulimit  (0) 2019.02.20
Linux Namespace  (0) 2018.12.17
Linux Service 만들기 (CentOS7)  (0) 2018.11.14
lvm의 기본 개념  (0) 2018.10.12

+ Recent posts