웹사이트 검색

초보자를 위한 Linux namei 명령 자습서(예제 5개)


이 페이지에서

  1. Linux namei 명령
  2. Q1. 이름을 사용하는 방법?\n
  3. Q2. namei 출력을 세로로 정렬하는 방법은 무엇입니까?\n
  4. Q3. namei 쇼 소유자 및 그룹 정보를 만드는 방법은 무엇입니까?
  5. Q4. namei가 긴 목록 출력 형식을 사용하게 하는 방법은 무엇입니까?\n
  6. Q5. namei는 심볼릭 링크와 어떻게 작동합니까?\n
  7. 결론

Linux 명령줄에서는 디렉터리, 심볼릭 링크 등과 같은 여러 유형의 파일을 사용하여 작업합니다. 때때로 요구 사항은 경로의 개별 요소(파일 유형, 소유자 등)에 대해 더 많이 알아야 하는 것입니다. 고맙게도 이 정보를 가져올 수 있는 내장된 Linux 명령줄 유틸리티(namei라고 함)가 있습니다.

이 자습서에서는 이해하기 쉬운 몇 가지 예를 사용하여 namei의 기본 사항에 대해 설명합니다. 그러나 시작하기 전에 여기에 있는 모든 예제가 Ubuntu 18.04 LTS 시스템에서 테스트되었음을 언급할 가치가 있습니다.

리눅스 이름i 명령

Linux의 namei 명령은 터미널 지점을 찾을 때까지 경로 이름을 따릅니다. 구문은 다음과 같습니다.

namei [options] pathname...

이 도구에 대한 매뉴얼 페이지의 내용은 다음과 같습니다.

namei  interprets  its  arguments as pathnames to any type of Unix file
       (symlinks, files, directories, and so forth).  namei then follows  each
       pathname  until  an  endpoint  is  found (a file, a directory, a device
       node, etc).  If it finds a symbolic link, it shows the link, and starts
       following it, indenting the output to show the context.

       This  program is useful for finding "too many levels of symbolic links"
       problems.

다음은 namei 명령이 작동하는 방식에 대한 좋은 아이디어를 제공하는 몇 가지 Q&A 형식의 예입니다.

Q1. 이름을 사용하는 방법?

기본 사용법은 매우 간단합니다. namei 다음에 명령줄 경로를 실행하기만 하면 됩니다.

예를 들어:

namei -v /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png

이 명령이 생성한 출력은 다음과 같습니다.

f: /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png
 d /
 d home
 d himanshu
 d Downloads
 d HTF-review
 d Nodejs-Docker
 - 1.png

도구 매뉴얼 페이지는 출력을 해석하는 방법을 자세히 설명합니다.

For each line of output, namei uses the following characters to identify the file type found:

          f: = the pathname currently being resolved
           d = directory
           l = symbolic link (both the link and its contents are output)
           s = socket
           b = block device
           c = character device
           p = FIFO (named pipe)
           - = regular file
           ? = an error of some kind

따라서 namei 명령이 우리가 제공한 경로의 모든 요소를 세분화하여 해당 유형에 대해 알려주는 것을 볼 수 있습니다.

Q2. namei 출력을 세로로 정렬하는 방법은 무엇입니까?

-v 명령줄 옵션을 사용하여 이 작업을 수행할 수 있습니다. 예를 들어:

namei -v /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png

결과는 다음과 같습니다.

f: /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png
d /
d home
d himanshu
d Downloads
d HTF-review
d Nodejs-Docker
- 1.png

이것을 이전 섹션에 표시된 출력과 비교하면 이번에는 수직 정렬이 있음을 알 수 있습니다.

Q3. namei 쇼 소유자 및 그룹 정보를 만드는 방법은 무엇입니까?

이것은 -o 명령줄 옵션을 사용하여 수행할 수 있습니다. 예를 들어:

namei -o /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png

결과는 다음과 같습니다.

f: /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png
 d root     root     /
 d root     root     home
 d himanshu himanshu himanshu
 d himanshu himanshu Downloads
 d himanshu himanshu HTF-review
 d himanshu himanshu Nodejs-Docker
 - himanshu himanshu 1.png

따라서 각 파일/디렉토리에 대한 소유권 정보가 출력에 표시되는 것을 볼 수 있습니다.

Q4. namei가 긴 목록 출력 형식을 사용하게 하는 방법은 무엇입니까?

이것은 -l 명령줄 옵션을 사용하여 수행할 수 있습니다.

namei -l /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png

결과는 다음과 같습니다.

f: /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png
drwxr-xr-x root     root     /
drwxr-xr-x root     root     home
drwxr-xr-x himanshu himanshu himanshu
drwxr-xr-x himanshu himanshu Downloads
drwxr-xr-x himanshu himanshu HTF-review
drwxr-xr-x himanshu himanshu Nodejs-Docker
-rw-rw-r-- himanshu himanshu 1.png

따라서 출력과 같은 ls 명령이 namei 명령에 의해 생성되는 것을 볼 수 있습니다.

Q5. namei는 심볼릭 링크와 어떻게 작동합니까?

처음에 이미 설명했듯이 namei 명령은 기본적으로 심볼릭 링크를 따릅니다. 예를 들어 내 시스템에서 link1은 파일 file1에 대한 심볼릭 링크이므로 다음과 같은 방식으로 namei에 대한 입력으로 link1 경로를 전달했습니다.

namei /home/himanshu/link1

그런 다음 다음과 같은 출력이 생성되었습니다.

f: /home/himanshu/link1
 d /
 d home
 d himanshu
 l link1 -> file1
   - file1

따라서 namei 명령이 file1이 어떤 종류의 파일인지 명확하게 보여 주는 것을 볼 수 있습니다. 그러나 원하는 경우 -n 명령줄 옵션을 사용하여 도구가 심볼릭 링크를 따르지 않도록 강제할 수 있습니다.

namei -n /home/himanshu/link1

이 경우 출력은 다음과 같습니다.

f: /home/himanshu/link1
 d /
 d home
 d himanshu
 l link1 -> file1

따라서 이 경우 도구가 심볼릭 링크를 따르지 않는 것을 볼 수 있습니다.

결론

namei 명령은 경로에 기호 링크 요소가 중첩된 경우에 특히 유용합니다. 이 자습서에서는 이 도구가 제공하는 대부분의 명령줄 옵션에 대해 설명했습니다. 연습을 마친 후에는 도구 매뉴얼 페이지로 이동하여 자세히 알아보세요.