Unix/Linux 目录操作命令总结
1. 查看目录内容
ls # 列出当前目录内容
ls -l # 详细列表(权限、大小、时间等)
ls -a # 显示所有文件(包括隐藏文件)
ls -lh # 人类可读的文件大小格式
ls -lt # 按修改时间排序
ls -R # 递归显示子目录内容
2. 切换目录
cd /path/to/dir # 切换到指定目录
cd # 或 cd ~ 回到用户主目录
cd ~username # 切换到指定用户的主目录
cd - # 返回上一个工作目录
cd .. # 返回上级目录
3. 创建目录
mkdir dirname # 创建单个目录
mkdir dir1 dir2 dir3 # 创建多个目录
mkdir -p parent/child # 创建多级目录(自动创建父目录)
mkdir -m 755 dirname # 创建目录并设置权限
4. 删除目录
rmdir dirname # 删除空目录
rm -r dirname # 递归删除目录及内容(危险!)
rm -rf dirname # 强制递归删除(更危险!)
5. 复制目录
cp -r source_dir dest_dir # 递归复制目录
cp -a source_dir dest_dir # 保留所有属性复制
cp -v source_dir dest_dir # 显示复制进度
6. 移动/重命名目录
mv old_dir new_dir # 重命名目录
mv dir1 dir2 dir3 dest # 移动多个目录到目标目录
7. 查看当前目录
pwd # 显示当前工作目录的完整路径
8. 目录权限管理
chmod 755 dirname # 修改目录权限
chmod u+rwx dirname # 给所有者添加读写执行权限
chmod g+rx dirname # 给组添加读执行权限
chown user:group dirname # 修改目录所有者和组
9. 目录大小查看
du -sh dirname # 显示目录总大小
du -h dirname # 显示目录中每个项目大小
du -c dirname # 显示总计大小
10. 目录比较
diff -r dir1 dir2 # 递归比较两个目录
11. 查找目录
find /path -type d -name "pattern" # 按名称查找目录
find /path -type d -empty # 查找空目录
12. 创建符号链接(软链接)
ln -s /target/dir link_name # 创建目录的软链接
13. 目录栈操作(高级)
pushd dirname # 将目录压入栈并切换
popd # 弹出栈顶目录并切换
dirs # 显示目录栈内容
14. 常用组合命令
# 创建并立即进入目录
mkdir newdir && cd newdir
# 复制目录并保留权限
cp -pr source dest
# 安全删除(交互式确认)
rm -ri dirname
# 查看目录结构
tree dirname
重要注意事项:
权限问题:操作目录需要相应的读(r)、写(w)、执行(x)权限
根目录保护:操作
/、
/etc、
/bin 等系统目录需要
sudo 权限
隐藏目录:以
. 开头的目录是隐藏目录,需要
ls -a 查看
路径表示:
/ 绝对路径
./ 当前目录
../ 上级目录
~ 用户主目录
推荐的安全习惯:
- 删除前先用
ls 确认目录内容
- 使用
rm -ri 而非 rm -rf 进行交互式删除
- 重要操作前备份数据
- 使用
tab 键自动补全目录名
这些命令适用于大多数 Unix-like 系统,包括 Linux、macOS 等。具体选项可能因系统略有差异,可使用 man command 查看详细手册。