Bash 获取路径在不同类型电脑的区别
在不同的操作系统和命令行环境中,获取当前工作目录的方式有所不同。以下是一些常见的情况:
Windows 命令提示符 (cmd.exe):
使用
%cd%
来获取当前工作目录。例如:
echo %cd%
Windows PowerShell:
使用
${pwd}
来获取当前工作目录。例如:
echo ${pwd}
类 Unix 系统(包括 macOS 和 Linux):
使用
$(pwd)
或者直接使用pwd
命令来获取当前工作目录。例如:
echo $(pwd)
或者pwd
为什么苹果电脑使用 $(pwd)
macOS 是基于 Unix 的操作系统,因此它的命令行环境与 Linux 相似,通常使用 Bash 或 Zsh 作为默认的终端 Shell。在这些 Shell 中,$(pwd)
是一种常见的语法,用于在命令中嵌入当前工作目录。
具体原因:
Unix 传统:
- Unix 和类 Unix 系统(如 macOS 和 Linux)通常使用 Shell 脚本来执行命令。
$(pwd)
是一种 Shell 命令替换语法,用于在命令中嵌入另一个命令的输出。
- Unix 和类 Unix 系统(如 macOS 和 Linux)通常使用 Shell 脚本来执行命令。
Shell 的一致性:
- 在 Bash、Zsh 等 Shell 中,
$(pwd)
是一种标准的、便捷的方式来获取当前工作目录,并且可以在各种脚本和命令中使用。
- 在 Bash、Zsh 等 Shell 中,
通用性和兼容性:
$(pwd)
这种方式在大多数 Unix 系统中都是通用的,确保了脚本和命令的跨平台兼容性。
总结
不同的操作系统和命令行环境有不同的获取当前工作目录的方式。macOS 使用 $(pwd) 是因为它继承了 Unix 系统的传统和 Shell 的一致性,这种方式在类 Unix 系统中是通用且兼容的。