插件窝 干货文章 linux中的工作目录是什么

linux中的工作目录是什么

目录 路径 工作 进程 245    来源:    2025-05-03

在Linux系统中,工作目录(Working Directory)是用户当前所处的目录路径,也称为当前目录(Current Directory)。它是Shell或进程执行命令时的默认操作位置,所有相对路径(不以/开头的路径)都基于此目录解析。


关键概念

  1. 查看工作目录
    使用pwd(Print Working Directory)命令显示绝对路径:

    pwd
    # 输出示例:/home/username/projects
    
  2. 切换工作目录
    使用cd(Change Directory)命令切换目录:

    cd /path/to/directory  # 绝对路径
    cd ../parent           # 相对路径(上级目录)
    cd ~                   # 切换到用户家目录
    
  3. 相对路径 vs 绝对路径

    • 相对路径:基于工作目录的路径(如./file.txt../folder)。
    • 绝对路径:从根目录/开始的完整路径(如/usr/bin)。
  4. 进程的工作目录
    每个进程(包括Shell)都有自己的工作目录,可通过/proc/<PID>/cwd符号链接查看:

    ls -l /proc/$$/cwd  # 查看当前Shell的工作目录
    

常见场景

  • 脚本中获取工作目录
    在Bash脚本中,$(pwd)$PWD变量可获取当前路径。

    echo "当前目录: $PWD"
    
  • 影响命令行为
    例如,ls默认列出工作目录内容,mkdir在工作目录下创建文件夹。

  • 后台进程的工作目录
    通过cd切换目录后,再启动后台进程,该进程会继承当前Shell的工作目录。


注意事项

  • 如果删除或移动了工作目录,Shell可能显示异常(如提示deleted),但实际路径仍可操作。
  • 权限问题:用户需对工作目录有执行(x)权限才能进入。

理解工作目录是高效使用Linux的基础,尤其在编写脚本或管理文件时至关重要。