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명령에 옵션이 지정되지 않은 경우 b> ”, 자동으로 “-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를 요청하십시오. b> 그것에.
먼저 '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에 연결해 주십시오.