Linux目录详解
Linux目录表达
用户路径
/是指根目录:就是所有目录最顶层的目录
.表示当前目录
..表示上级目录
.与./区别
在Linux系统中,. 和 ./ 都与当前目录相关,但它们的用途和含义有所不同:
1. .(单个点号)
含义:表示当前目录本身。
用途:
作为路径的一部分,显式引用当前目录。
在命令中作为参数时,表示操作对象是当前目录。
示例:
bash
复制
# 列出当前目录的内容(等同于直接输入 `ls`)
ls .
# 复制文件到当前目录(目标路径为 `.`)
cp /path/to/file.txt .
# 切换到当前目录(无实际效果,保持原位)
cd .
2. ./(点号后接斜杠)
含义:表示当前目录下的某个文件或子目录,是一个相对路径前缀。
用途:
执行当前目录下的可执行文件(需权限)。
明确指定当前目录中的某个文件或子目录,避免歧义。
示例:
bash
复制
# 运行当前目录下的脚本(需可执行权限)
./script.sh
# 查看当前目录下的子目录 "docs" 的内容
ls ./docs
# 删除当前目录中的文件 "temp.txt"
rm ./temp.txt
关键区别
符号
含义
典型场景
.
当前目录本身
作为命令参数引用当前目录
./
当前目录下的文件或子目录
执行文件或访问子目录时指定路径
常见混淆场景
场景1:执行脚本
直接输入 script.sh,系统可能在 PATH 环境变量中搜索该文件,若未找到则报错。
输入 ./script.sh,明确告知系统从当前目录执行,避免依赖 PATH。
场景2:路径歧义
若当前目录有一个名为 docs 的文件和目录,rm docs 可能删除文件,而 rm ./docs 会明确操作当前目录下的 docs。
总结
. 是当前目录的“本体”,常用于命令参数。
./ 是当前目录的“入口”,用于访问其下的内容。
使用 ./ 可以更清晰地表示相对路径,尤其在执行文件或避免歧义时至关重要。