核心概念filesystem
Linux 文件系统路径
理解绝对路径、相对路径、当前目录、上级目录与家目录展开,避免在文件操作中定位错误。
**文件系统路径(filesystem path)**是用于定位文件或目录的名称序列。
- 绝对路径以
/开头,从根目录解析,例如/etc/os-release。 - 相对路径不以
/开头,从当前工作目录解析,例如notes/day1.md。 .表示当前目录,..表示上一级目录。~是 Shell 的波浪号展开,通常展开为当前用户的家目录;它不是磁盘上的真实目录名。
先确认当前位置,再进行文件操作:
pwdcd -- "$HOME"ls -la -- .$HOME 是家目录环境变量。变量可能包含空格,因此路径变量应写成 "$HOME",并在支持的命令中用 -- 结束选项解析。
WORK_DIR="$HOME/practice/day1"mkdir -p -- "$WORK_DIR"cd -- "$WORK_DIR"pwd预期最后一行是当前用户家目录下的 practice/day1,而不是 /practice/day1。
~day2/scripts表示用户day2的家目录,不等于~/day2/scripts。- 写成
"~"会阻止 Bash 展开波浪号;变量中优先使用"$HOME"。 - 执行
rm、mv等命令前,不要只凭提示符猜测位置,应先运行pwd和ls。