Linux 相对路径和绝对路径的使用
01. 概述 绝对路径和相对路径在shell环境中经常遇到,各有用处。有时候相对路径比较方便,有时候绝对路径比较方便。 02. 绝对路径(Absolute Pathname) 绝对路径必定由**/**开头 绝对路径是为档案/文件的所在位置做指向 在任何时候,都可以用绝对路径来找到我们想要的文件 举例说明 示例一: /home/deng 示例二: /usr/share/man 03. 相对路径(Relative Pathnames) 相对路径不由**/**开头 相对路径是相对于现在目前所在的位置,为目的地指向 通常相对路径比绝对路径短一点,可以当成我们迅速找到文件/档案的捷径 示例一 在Linux操作系统中,路径是用来定位文件或目录位置的字符串。主要分为两种类型:绝对路径和相对路径,它们在shell环境中有着广泛的应用。 1. **绝对路径(Absolute Pathname)** 绝对路径是描述文件或目录精确位置的方式,它始终以一个斜杠`/`开头。这种路径提供了从根目录开始到目标文件或目录的完整路线。例如,`/home/deng`表示用户deng的主目录,而`/usr/share/man`则是系统共享手册页的目录。无论当前工作目录在哪里,使用绝对路径都能准确无误地找到目标。 2. **相对路径(Relative Pathnames)** 相对路径则不以斜杠`/`开头,而是基于当前工作目录来确定目标文件或目录的位置。它提供了一种更简洁的方式,尤其是当目标文件或目录与当前目录有直接关系时。例如,`../test/itcast`表示当前目录的上一级目录中的`test/itcast`,而`./test`则表示当前目录下的`test`子目录。 3. **相对路径的用途** 相对路径的便利性在于,它允许在不同环境下灵活地引用文件或目录,无需考虑具体安装位置。比如,当开发软件时,如果依赖的目录结构相同,但安装位置各异,使用相对路径可以使软件在不同位置下都能正常工作。此外,它还可以使命令行输入更简洁,比如通过`cd ..`返回上一级目录,或使用`.`和`..`来导航当前或父级目录。 4. **绝对路径的用途** 绝对路径的优点在于它的准确性。在编写shell脚本或程序时,为了确保命令或操作不受工作目录影响,通常推荐使用绝对路径。这样可以保证程序在任何环境下都能按预期执行,避免因路径问题引发的错误。 5. **识别相对路径的绝对路径** 当使用相对路径时,系统会根据`PATH`环境变量来查找对应的绝对路径。`PATH`变量包含一系列目录,shell会在这些目录中寻找可执行文件。例如,如果在`/home/itcast`目录下执行`more .bashrc`,shell会根据`PATH`变量中的`/usr/bin`找到`more`命令的绝对路径`/usr/bin/more`,然后执行它。 6. **执行文件的路径注意事项** 在执行当前目录下的可执行文件时,通常需要加上`.`符号前缀,如`./test.sh`,这是因为`PATH`变量通常不包含当前目录。如果不加`./`,shell可能无法找到文件,因为它会尝试在`PATH`变量列出的目录中寻找名为`test.sh`的可执行文件。 了解和熟练掌握绝对路径和相对路径的使用对于在Linux系统中进行文件操作、编写脚本或程序都至关重要。正确运用路径能提高工作效率,减少因路径问题导致的错误。在日常工作中,可以根据实际情况灵活选择使用绝对路径还是相对路径,以实现最佳的文件管理和程序执行效果。