服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - linux系统下pwd命令用法详解

linux系统下pwd命令用法详解

2019-11-20 21:25linux命令大全 Linux

linux上pwd命令是Print Working Directory的缩写,基本功能是打印当前的工作目录,但是也有一些特殊的用法,本文总结关于pwd的使用方法

Linux中用 pwd 命令来查看”当前工作目录“的完整路径。 简单得说,每当你在终端进行操作时,你都会有一个当前工作目录。 

在不太确定当前位置时,就会使用pwd来判定当前目录在文件系统内的确切位置。

1.命令格式:

 pwd [选项]

2.命令功能:

 查看”当前工作目录“的完整路径

3.常用参数:

一般情况下不带任何参数
如果目录是链接时:
格式:pwd -P  显示出实际路径,而非使用连接(link)路径。

4.常用实例:

       实例1:用 pwd 命令查看默认工作目录的完整路径

命令:
pwd 
输出:

 

复制代码

代码如下:


[root@localhost ~]# pwd
/root
[root@localhost ~]#

 

实例2:使用 pwd 命令查看指定文件夹
命令:
pwd
输出:

 

复制代码

代码如下:


[root@localhost ~]# cd /opt/soft/
[root@localhost soft]# pwd 
/opt/soft
[root@localhost soft]#

 

实例三:目录连接链接时,pwd -P  显示出实际路径,而非使用连接(link)路径;pwd显示的是连接路径

命令:
pwd -P
输出:

 

复制代码

代码如下:


[root@localhost soft]# cd /etc/init.d 
[root@localhost init.d]# pwd
/etc/init.d
[root@localhost init.d]# pwd -P
/etc/rc.d/init.d
[root@localhost init.d]#

 

实例4:/bin/pwd

命令:
/bin/pwd [选项]
选项:
-L 目录连接链接时,输出连接路径
-P 输出物理路径
输出:

 

复制代码

代码如下:


[root@localhost init.d]# /bin/pwd 
/etc/rc.d/init.d
[root@localhost init.d]# /bin/pwd --help
[root@localhost init.d]# /bin/pwd -P
/etc/rc.d/init.d
[root@localhost init.d]# /bin/pwd -L
/etc/init.d
[root@localhost init.d]#

 

实例五:当前目录被删除了,而pwd命令仍然显示那个目录

 输出:

 

复制代码

代码如下:


[root@localhost init.d]# cd /opt/soft
[root@localhost soft]# mkdir removed
[root@localhost soft]# cd removed/
[root@localhost removed]# pwd
/opt/soft/removed
[root@localhost removed]# rm ../removed -rf
[root@localhost removed]# pwd
/opt/soft/removed
[root@localhost removed]# /bin/pwd
/bin/pwd: couldn't find directory entry in “..” with matching i-node
[root@localhost removed]# cd 
[root@localhost ~]# pwd
/root
[root@localhost ~]#



以下是补充:

本文介绍下,linux中pwd命令的详细用法,除了打印当前的工作目录,还有些特殊的用法,希望对大家有所帮助。
linux上pwd命令是Print Working Directory的缩写,基本功能是打印当前的工作目录,但是也有一些特殊的用法,本文总结关于pwd的使用方法。

 

先来看下没有参数的pwd,然后介绍-P的作用,例如:

 

复制代码

代码如下:


www.zzvips.com:~# cd /proc/self 
www.zzvips.com:/proc/self# pwd 
/proc/self 
www.zzvips.com:/proc/self# pwd -P 
/proc/5401 
www.zzvips.com:/proc/self# ls -l /proc/self 
lrwxrwxrwx 1 root root 64 Jun 23 18:25 /proc/self -> 5410 
www.zzvips.com:/proc/self# 

 

pwd:显示当前的工作路径。
pwd  -P:如果当前的工作路径是链接的话,显示链接的原始路径,也就是实际路径,如ls -l /proc/self 显示的一样。
pwd -L:与pwd  -P完全相反,显示链接路径

这里再谈下linux系统中的环境变量PWD和OLDPWD。
环境变量PWD:显示当前工作路径的环境变量

环境变量OLDPWD:显示上一次的工作路径。

注意:由于是环境变量,使用的时候需要加上$变量标志,下面的命令详细演示了该环境变量的用法。
 
 

复制代码

代码如下:


www.zzvips.com:~# cd /var/www 
www.zzvips.com:/var/www# echo $PWD 
/var/www 
www.zzvips.com:/var/www# echo $OLDPWD 
/root 
www.zzvips.com:/var/www# 

 

看看还是比较容易理解的。

附,获取当前目录的父目录的代码:
 

 

复制代码

代码如下:


www.zzvips.com:/var/www# echo $(dirname $(pwd)) 
/var 
www.zzvips.com:/var/www# 

 

内建命令pwd和外部命令/bin/pwd。
内建命令pwd和外部命令/bin/pwd是两个不同的命令,通过以下的示例,看下其中的区别:
 
 

复制代码

代码如下:


www.zzvips.com:/var/www# pwd -P 
/var/www 
www.zzvips.com:/var/www# /bin/pwd -P 
/bin/pwd: invalid option -- P 
Try `/bin/pwd --help' for more information. 

 

可见内建命令pwd和外部命令/bin/pwd压根不是同一个命令,那问题就来了,这两个命令的联系跟区别是什么呢?
来看这些例子:
 
 

复制代码

代码如下:


www.zzvips.com:/var/www# cd // 
www.zzvips.com://# pwd 
// 
www.zzvips.com://# /bin/pwd 

www.zzvips.com://# 

 

由此可见,二者的基本功能是一致的,但是在显示当前目录时,/bin/pwd显示得更准确些,而pwd容易被操作者糊弄。但是差别不大。

就介绍这些了,有关linux命令中pwd命令的用法,希望对大家有所帮助。

延伸 · 阅读

精彩推荐