Linux中的cd ~命令

我会从核心功能、等价命令、使用场景、特殊细节四个维度讲清楚,让你彻底理解这个新手高频使用的命令。

一、cd ~ 的核心作用

cd ~ 是 Linux 中快速切换到当前登录用户"家目录" 的命令,是最常用的目录切换快捷方式之一:

  • cd:change directory 的缩写,即"切换目录";
  • ~:波浪号,是 Linux 中当前用户家目录的"快捷符号"(系统会自动解析为对应的家目录路径)。
通俗举例
  • 如果你以普通用户(比如 user1) 登录:cd ~ 等价于 cd /home/user1;
  • 如果你以管理员(root) 登录:cd ~ 等价于 cd /root;
  • 如果你切换到其他用户(比如 su zhangsan):cd ~ 会切换到 zhangsan 的家目录 /home/zhangsan。

二、与 cd ~ 完全等价的操作

1. 最简等价:直接输入 cd

在 Linux 中,单独执行 cd 命令(不带任何参数) ,默认就是切换到当前用户的家目录,和 cd ~ 效果完全一样:

bash 复制代码
# 以下三条命令效果完全相同(以 user1 登录为例)
cd ~
cd
cd /home/user1
2. 其他等价写法(进阶)
  • 用环境变量 $HOME:cd $HOME($HOME 是系统内置环境变量,存储当前用户的家目录路径);

    bash 复制代码
    # 先查看 $HOME 的值
    echo $HOME  # 输出 /home/user1(普通用户)或 /root(root)
    cd $HOME    # 等价于 cd ~
  • 绝对路径:直接写家目录的完整路径(比如 cd /home/user1、cd /root),但这种方式需要手动写路径,不如 cd ~/cd 便捷。

三、cd ~ 的扩展用法(新手也能快速掌握)

~ 不仅能单独用,还能结合路径快速切换到家目录下的子目录,比写完整路径更高效:

bash 复制代码
# 切换到当前用户家目录下的 docker 文件夹(等价于 cd /home/user1/docker)
cd ~/docker

# 切换到 root 用户的家目录(即使当前是普通用户)
cd ~root  # 等价于 cd /root

# 切换到 zhangsan 用户的家目录
cd ~zhangsan  # 等价于 cd /home/zhangsan

四、关键细节(避坑重点)

  1. ~ 与 - 的区别:

    • cd ~:切换到当前用户家目录;
    • cd -:切换到上一次所在的目录 (比如你从 /etc 切到 /var,执行 cd - 会切回 /etc)。
      示例:
    bash 复制代码
    cd /etc/docker  # 进入 /etc/docker
    cd ~            # 切到 /home/user1
    cd -            # 切回 /etc/docker(上一次的目录)
  2. 权限问题 :

    普通用户执行 cd ~root 只能"切换目录"(前提是有权限进入 /root),但默认普通用户无权限访问 /root,会提示 Permission denied;而 cd ~ 永远能切换到自己的家目录(权限不受限)。

  3. ~ 不是目录名 :
    ~ 是系统的"快捷符号",不是实际存在的目录,用 ls ~ 能列出家目录的文件,但 ls ~ 本质是解析为 ls /home/user1 后执行。

总结

  1. cd ~ 的核心作用是快速切换到当前登录用户的家目录 ,是 cd /home/用户名(普通用户)或 cd /root(root)的快捷写法;
  2. 与 cd ~ 完全等价的操作是单独执行 cd 命令 ,也等价于 cd $HOME;
  3. 扩展用法:~/子目录 可快速切换到家目录下的指定子目录,~用户名 可切换到指定用户的家目录;
  4. 注意区分 cd ~(回家目录)和 cd -(回上一次目录)的不同。

这个命令是 Linux 日常操作中最便捷的目录切换方式,记住 cd 或 cd ~ 就能随时回到自己的"专属目录",避免手动输入长路径。

相关推荐
Decay__2 小时前
05_MySQL 常用 SQL 大全 —— 诊断、管理、优化辅助 SQL 与三大系统库速查
运维·数据库·sql·mysql·架构
贞明电子4 小时前
工业三色报警灯怎么接入项目系统?开关量与RS485控制应用指南
运维·网络·微信公众平台·贞明电子
HideF5 小时前
Linux
linux·服务器·网络
万联WANFLOW5 小时前
海外网络故障怎么排查?Cloudflare 三季度断网报告解读与 mtr 实战
运维·网络·故障分析
Ruiery7 小时前
Linux 6.6内核内存管理深度解析(十三):slab/slub 分配器
linux·运维·服务器
乌恩大侠7 小时前
从 AI-RAN 到 AI Agent:基于 NVIDIA Nemotron 构建 5G/6G 智能网络故障诊断系统
服务器·人工智能·5g·o-ru·ai-ran·电信大模型
Decay__8 小时前
04_MySQL DBA 日常运维手册 —— 会话管理、锁与阻塞、事务监控、慢查询与日志巡检
运维·数据库·sql·mysql·架构
丰锋ff9 小时前
压缩命令笔记
linux
江华森9 小时前
数据中心基础设施运维实战:概述与实验环境搭建
运维
迪菲赫尔曼9 小时前
【基础篇 11】把官方源码放到服务器:版本、解压层级和安装位置,一次弄清楚
运维·服务器·开发语言·人工智能·python·yolo·目标检测