웹사이트 검색

15 Linux의 'pwd'(작업 디렉터리 인쇄) 명령 예


Linux 명령줄을 사용하는 경우 루트(/)에서 시작하여 현재 위치, 즉 어느 디렉터리에 있는지 알려주는 'pwd' 명령이 매우 유용합니다. 특히 탐색하는 동안 명령줄 인터페이스의 디렉터리에서 길을 잃을 수 있는 Linux 초보자의 경우 'pwd' 명령이 도움이 됩니다.

pwd란 무엇인가요?

'pwd'는 '작업 디렉토리 인쇄'를 의미합니다. 이름에서 알 수 있듯이 'pwd' 명령은 현재 작업 디렉토리 또는 단순히 현재 사용자 디렉토리를 인쇄합니다. 루트(/)에서 시작하는 전체 경로와 함께 현재 디렉터리 이름을 인쇄합니다. 이 명령은 쉘 명령에 내장되어 있으며 bash, Bourne 쉘, ksh,zsh 등 대부분의 쉘에서 사용할 수 있습니다.

pwd의 기본 구문:
pwd [OPTION]
pwd와 함께 사용되는 옵션
 Options

 설명

 -L (logical)

 심볼릭 링크가 포함되어 있더라도 환경의 PWD 사용

 -P (physical)

 모든 기호 링크 방지

 –help

 이 도움말을 표시하고 종료

 –version

 버전 정보 출력 및 종료

'-L' 및 '-P' 옵션을 모두 사용하는 경우 'L' 옵션이 우선적으로 적용됩니다. 프롬프트에 옵션이 지정되지 않으면 pwd는 모든 심볼릭 링크를 피합니다. 즉, '-P' 옵션을 고려합니다.

pwd 명령의 종료 상태:

0

성공

Non-zero

실패

이 글의 목표는 실용적인 예를 통해 Linux 명령 'pwd'에 대한 깊은 통찰력을 제공하는 것입니다.

1. 현재 작업 디렉토리를 인쇄합니다.

avi@tecmint:~$ /bin/pwd

/home/avi

2. 폴더의 심볼릭 링크를 만듭니다(예: 홈 디렉토리에 htm으로 /var/www/html). 새로 생성된 디렉터리로 이동하고 기호 링크가 있거나 없는 작업 디렉터리를 인쇄합니다.

홈 디렉토리에 /var/www/html 폴더의 심볼릭 링크를 htm으로 생성하고 해당 폴더로 이동합니다.

avi@tecmint:~$ ln -s /var/www/html/ htm
avi@tecmint:~$ cd htm

3. 심볼릭 링크가 포함되어 있더라도 환경에서 작업 디렉토리를 인쇄합니다.

avi@tecmint:~$ /bin/pwd -L

/home/avi/htm

4. 모든 기호 링크를 확인하여 실제 실제 현재 작업 디렉토리를 인쇄합니다.

avi@tecmint:~$ /bin/pwd -P

/var/www/html

5. "pwd" 명령과 "pwd -P " 명령의 출력이 동일한지 확인하십시오. 즉, 옵션이 제공되지 않은 경우 런타임에서는 "pwd"가 자동으로 -P 옵션을 고려하는지 여부를 결정합니다.

avi@tecmint:~$ /bin/pwd

/var/www/html

결과: 위의 예제 4와 5의 출력에서 명확합니다(두 결과 모두 동일함). 따라서 “pwd ”, 자동으로 “-P ” 옵션을 고려합니다.

6. 'pwd' 명령의 버전을 인쇄합니다.

avi@tecmint:~$ /bin/pwd --version

pwd (GNU coreutils) 8.23
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Jim Meyering.

참고: 'pwd' 명령은 옵션 없이 사용되는 경우가 많으며 인수와 함께 사용되지 않습니다.

중요: 위 명령을 "pwd<가 아닌 "/bin/pwd "로 실행하고 있다는 점을 눈치채셨을 것입니다.”.

그렇다면 차이점은 무엇입니까? "pwd"만으로도 쉘 내장 pwd를 의미합니다. 쉘에 다른 버전의 pwd가 있을 수 있습니다. 설명서를 참조하세요. /bin/pwd를 사용할 때 해당 명령의 바이너리 버전을 호출합니다. 셸 및 바이너리 버전의 명령은 모두 현재 작업 디렉터리를 인쇄하지만 바이너리 버전에는 더 많은 옵션이 있습니다.

7. pwd라는 실행 파일이 포함된 모든 위치를 인쇄합니다.

avi@tecmint:~$ type -a pwd

pwd is a shell builtin
pwd is /bin/pwd

8. "pwd" 명령의 값을 변수(예: a)에 저장하고 해당 값을 변수에서 인쇄합니다(셸 스크립팅에 중요). 관점).

avi@tecmint:~$ a=$(pwd)
avi@tecmint:~$ echo "Current working directory is : $a"

Current working directory is : /home/avi

또는 위 예에서 printf를 사용할 수 있습니다.

9. 현재 작업 디렉터리를 원하는 대로 변경하고(예: /home) 이를 명령줄 프롬프트에 표시합니다. 명령(예: 'ls')을 실행하여 모든 것이 정상인지 확인하세요.

avi@tecmint:~$ cd /home
avi@tecmint:~$ PS1='$pwd> '		[Notice single quotes in the example]
> ls

10. 여러 줄 명령줄 프롬프트를 설정합니다(아래와 같이 말하세요).

/home
123#Hello#!

그런 다음 명령(예: ls)을 실행하여 모든 것이 OK인지 확인합니다.

avi@tecmint:~$ PS1='
> $PWD
123#Hello#!
'

/home
123#Hello#!

11. 현재 작업 디렉토리와 이전 작업 디렉토리를 한 번의 GO!

avi@tecmint:~$ echo “$PWD $OLDPWD”

/home /home/avi

12. pwd 바이너리 파일의 절대 경로(/에서 시작)는 무엇입니까?

/bin/pwd 

13. pwd 소스 파일의 절대 경로(/에서 시작)는 무엇입니까?

/usr/include/pwd.h 

14. pwd 매뉴얼 페이지 파일의 절대 경로(/에서 시작)를 인쇄합니다.

/usr/share/man/man1/pwd.1.gz

15. 홈 디렉토리의 현재 디렉토리(예: tecmint)를 분석하는 쉘 스크립트를 작성하십시오. tecmint 디렉토리에 있으면 “글쎄! 당신은 tecmint 디렉토리에 있습니다 ” 그런 다음 “Good Bye ”를 인쇄하고 그렇지 않으면 홈 디렉토리 아래에 tecmint 디렉토리를 만들고 cd 그것에.

먼저 'tecmint' 디렉터리를 만들고 그 아래에 'pwd.sh'라는 이름의 다음 쉘 스크립트 파일을 만듭니다.

avi@tecmint:~$ mkdir tecmint
avi@tecmint:~$ cd tecmint
avi@tecmint:~$ nano pwd.sh

그런 다음 pwd.sh 파일에 다음 스크립트를 추가합니다.

#!/bin/bash

x="$(pwd)"
if [ "$x" == "/home/$USER/tecmint" ]
then
     {
      echo "Well you are in tecmint directory"
      echo "Good Bye"
     }
else
     {
      mkdir /home/$USER/tecmint
      echo "Created Directory tecmint you may now cd to it"
     }
fi

실행 권한을 부여하고 실행해 보세요.

avi@tecmint:~$ chmod 755 pwd.sh
avi@tecmint:~$ ./pwd.sh

Well you are in tecmint directory
Good Bye

결론

pwd는 가장 단순하면서도 가장 널리 사용되고 가장 널리 사용되는 명령 중 하나입니다. Linux 터미널을 사용하려면 pwd에 대한 좋은 명령이 기본입니다. 지금은 여기까지입니다. 나는 곧 또 다른 흥미로운 기사를 가지고 다시 여기에 올 것입니다. 그때까지 계속 지켜봐주시고 Tecmint에 연결해 주십시오.


판권 소유. © Linux-Console.net • 2019-2024