日期:2014-05-16  浏览次数:20717 次

我使用过的Linux命令之pwd - 显示当前工作目录

我使用过的Linux命令之pwd - 显示当前工作目录

本文链接:http://codingstandards.iteye.com/blog/801028 ? (转载请注明出处)

用途说明

pwd命令用于显示当前工作目录,是Linux下最常用的命令之一。在不太确定当前位置时,就会使用pwd来判定当前目录在文件系统内的确切位置。环境变量OLDPWD表示前一次的工作目录,环境变量PWD表示当前的工作目录。

常用参数

一般情况下不带任何参数。

格式:pwd

如果目录是链接时。

格式:pwd -P? 显示出实际路径,而非使用连接(link)路径。

使用示例

示例一 root用户

Last login: Tue Nov? 2 19:15:53 2010 from 222.70.145.185
[root@web ~]# pwd
/root
[root@web ~]# echo $OLDPWD

[root@web ~]# echo $PWD
/root
[root@web ~]# cd /etc/init.d
[root@web init.d]# pwd
/etc/init.d
[root@web init.d]# echo $OLDPWD
/root
[root@web init.d]# echo $PWD
/etc/init.d
[root@web init.d]#

示例二 普通用户

Last login: Fri Oct 29 16:18:50 2010 from hnas1
[web@hnweb1 ~]$ pwd
/home/web
[web@hnweb1 ~]$ echo $OLDPWD

[web@hnweb1 ~]$ echo $PWD
/home/web
[web@hnweb1 ~]$ cd work
[web@hnweb1 work]$ pwd
/home/web/work
[web@hnweb1 work]$ echo $OLDPWD
/home/web
[web@hnweb1 work]$ echo $PWD
/home/web/work
[web@hnweb1 work]$

?

示例三 如果目录是个符号链接

[root@web ~]# cd /var/mail
[root@web mail]# pwd
/var/mail
[root@web mail]# pwd -P
/var/spool/mail
[root@web mail]# pwd -L
/var/mail
[root@web mail]# ls -l /var/mail
lrwxrwxrwx 1 root root 10 06-28 17:21 /var/mail -> spool/mail
[root@web mail]#

?

示例四 在bash脚本中取当前目录,上级目录

# 当前目录保存到变量D中
D=$(pwd)

# 根据当前目录得到上级目录
P=$(dirname $D)

# 打印当前目录和上级目录
echo D=$D P=$P
?

[root@web setup]# D=$(pwd)?
[root@web setup]# P=$(dirname $D)???
[root@web setup]# echo D=$D P=$P
D=/root/setup P=/root
[root@web setup]#

?

示例五 你所不知道的pwd

[root@web init.d]# type -a pwd
pwd is a shell builtin
pwd is /bin/pwd
[root@web init.d]# /bin/pwd
/etc/rc.d/init.d
[root@web init.d]# /bin/pwd --help
用法:/bin/pwd [选项]
打印当前工作目录的完整文件名。

????? --help???? 显示此帮助信息并退出
????? --version? 输出版本信息并退出

NOTE: your shell may have its own version of pwd, which usually supersedes
the version described here.? Please refer to your shell's documentation
for details about the options it supports.

请向 <bug-coreutils@gnu.org> 报告错误。
[root@web init.d]# /bin/pwd -P
/bin/pwd:无效选项 -- P
请尝试执行“/bin/pwd --help”来获取更多信息。
[root@web init.d]# /bin/pwd -L
/bin/pwd:无效选项 -- L
请尝试执行“/bin/pwd --help”来获取更多信息。
[root@web init.d]# cd //
[root@web //]# pwd
//
[root@web //]# /bin/pwd
/
[root@web //]# cd
[root@web ~]# pwd
/root
[root@web ~]#