Linux中用 pwd 命令来查看”当前工作目录“的完整路径。 简单得说,每当你在终端进行操作时,你都会有一个当前工作目录。
在不太确定当前位置时,就会使用pwd来判定当前目录在文件系统内的确切位置。
1.命令格式:
pwd [参数]
2.命令功能:
pwd 代表的是‘Print Working Directory’(打印当前目录)。
如它的名字那样,‘pwd’会打印出当前工作目录,或简单的来说就是当前用户所位于的目录。它会打印出以根目录 (/)为起点的完整目录名(绝对目录)
3.常用参数:
一般情况下不带任何参数
参数 | 描述 |
---|---|
-L | 即逻辑路径logical,当目录为连接路径时,显示连接路径 |
-P | 即物理路径physical,显示实际物理路径,而非使用连接(link)路径 |
如果同时使用了‘-L‘和‘-P‘,‘-L‘会有更高的优先级。如果没有指定参数,pwd会避开所有的软链接,也就是说会使用‘-P‘参数。
4.常用示例:
1.查看pwd命令
命令:
man pwd
输出:
PWD(1) User Commands PWD(1) NAME pwd - print name of current/working directory SYNOPSIS pwd [OPTION]... DESCRIPTION Print the full filename of the current working directory. -L, --logical use PWD from environment, even if it contains symlinks -P, --physical avoid all symlinks --help display this help and exit --version output version information and exit If no option is specified, -P is assumed. Manual page pwd(1) line 1 (press h for help or q to quit)
2.显示当前目录所在路径
命令:
pwd
输出:
zbk@zbk-virtual-machine:~/PycharmProjects/py3_test$ pwd /home/zbk/PycharmProjects/py3_test
目录结构如下:
zbk@zbk-virtual-machine:~/PycharmProjects$ tree -L 2 . ├── FreshOnline │ ├── apps │ ├── db_tools │ ├── extra_apps │ ├── FreshMartOnline │ ├── manage.py │ ├── media │ ├── README.md │ └── requirements.txt ├── FreshOnline_env │ ├── bin │ ├── include │ ├── lib │ ├── lib64 -> lib │ ├── pip-selfcheck.json │ ├── pyvenv.cfg │ └── share ├── my_test │ ├── 2018.log │ ├── link2018 -> 2018.log │ ├── ln2018 │ └── test ├── py3_test │ ├── t1.py │ └── venv └── test └── my_test -> /home/zbk/PycharmProjects/my_test
说明:目录为连接路径时,pwd -P 显示出实际路径,而非使用连接(link)路径;pwd显示的是连接路径
示例如下:
PycharmProjects/test目录下有一个my_test连接文件,指向PycharmProjects/my_test目录,
进入test目录下的my_test目录,使用pwd,显示结果与pwd -L 一致,是逻辑(连接)路径,要查看实际物理路径则使用pwd -P
zbk@zbk-virtual-machine:~/PycharmProjects/test$ pwd /home/zbk/PycharmProjects/test zbk@zbk-virtual-machine:~/PycharmProjects/test$ ll 总用量 8 drwxr-xr-x 2 zbk zbk4096 10月 23 13:38 ./ drwxrwxr-x 7 zbk zbk4096 10月 23 13:30 ../ lrwxrwxrwx 1 zbk zbk32 10月 23 13:38 my_test -> /home/hc/PycharmProjects/my_test/ zbk@zbk-virtual-machine:~/PycharmProjects/test$ cd my_test zbk@zbk-virtual-machine:~/PycharmProjects/test/my_test$ pwd /home/zbk/PycharmProjects/test/my_test zbk@zbk-virtual-machine:~/PycharmProjects/test/my_test$ pwd -P /home/hc/PycharmProjects/my_test zbk@zbk-virtual-machine:~/PycharmProjects/test/my_test$ pwd -L /home/zbkc/PycharmProjects/test/my_test
3. 多层连接文件时,显示所有连接文件最终指向的文件全路径
/root目录下面有个dir1目录,test连接文件指向dir1目录
/opt目录下面有一个test连接文件,指向/root/test连接文件
通过cd命令进入/opt/test
pwd默认,只显示连接文件的全路径
root@hc-virtual-machine:~# pwd /root root@hc-virtual-machine:~# ll total 12 drwxr-xr-x 2 root root 4096 Apr 24 05:51 dir1 lrwxrwxrwx 1 root root 5 Apr 24 05:54 test -> dir1/ root@hc-virtual-machine:~# ll /opt/ total 20 drwx------ 16 sgl sgl 4096 Oct 17 2015 sgl lrwxrwxrwx 1 root root 10 Apr 24 05:55 test -> /root/test root@zbk-virtual-machine:~# cd /opt/test/ root@zbk-virtual-machine:~# pwd /opt/test root@hc-virtual-machine:~# pwd -P /root/dir1
pwd -P 显示连接文件最终指向的文件的全路径。注意这里不是/root/test。