命令简介

pwd (Print Working Directory) 命令用于显示当前工作目录的完整路径。它是一个非常简单但常用的命令,对于确认当前所在位置或在脚本中获取当前路径非常有用。

命令格式

1
pwd [选项]

参数说明

pwd 命令通常不需要任何选项。但是,为了兼容性和特殊情况的处理,它提供了以下几个选项:

参数 说明 备注
-L 显示符号链接所指向的实际路径 默认情况下显示符号链接本身的路径
-P 显示实际路径,不解析符号链接 与 -L 相反

命令实例

基本用法

1.显示当前工作目录的完整路径

1
pwd

2.显示符号链接所指向的实际路径

1
2
3
ln -s /var/log/nginx/ logs
cd logs
pwd -L

这将创建一个指向 /var/log/nginx 的符号链接 logs。然后切换到 logs 目录并使用 pwd -L 显示符号链接所指向的实际路径。输出结果为:

1
/var/log/nginx

3.显示实际路径,不解析符号链接

1
2
3
ln -s /var/log/nginx/ logs
cd logs
pwd -P

这将创建一个指向 /var/log/nginx 的符号链接 logs。然后切换到 logs 目录并使用 pwd -P 显示当前目录的实际路径,不解析符号链接。输出结果为:

1
/home/user/Documents/logs

扩展用法

1.在脚本中获取当前路径

1
2
3
4
#!/bin/bash

current_dir=$(pwd)
echo "Current directory: $current_dir"

这将在脚本中获取当前工作目录的完整路径,并将其存储在 current_dir 变量中。然后可以在脚本中使用该变量进行进一步操作。

2.组合使用其他命令

1
mkdir "$(pwd)/new_dir"

这将在当前工作目录下创建一个名为 new_dir 的新目录。pwd 命令用于获取当前工作目录的路径,并与 mkdir 命令结合使用。

高级用法

pwd 命令本身非常简单,通常不需要高级用法。但是,如果你需要处理非标准情况下的路径,可以考虑使用以下方法:

1.显示规范化的路径

1
pwd -P | sed 's/\/\+/\//g'

这将显示规范化的路径,去除多余的斜杠 (/)。例如,如果当前路径为 /home/user//Documents/,输出将是 /home/user/Documents

2.显示相对路径

1
pwd | sed "s|$HOME|~|"

这将显示相对于用户主目录的路径。如果当前路径为 /home/user/Documents,输出将是 ~/Documents

以上是关于 pwd 命令的详细文档,包括命令简介、语法格式、参数使用说明、演示实例以及扩展和高级使用方法。虽然 pwd 命令非常简单,但它是日常工作和脚本编写中非常有用的命令之一。