Linux指令和权限

1. 目录与文件基本操作

1.1 查看与切换 (ls, pwd, cd)

  • ls: 列出目录内容。
    • -a: 显示所有文件(含隐藏文件,以.开头)。
    • -l: 显示详细信息(权限、大小、时间等)。
    • -d: 显示目录本身而非其内容。
  • pwd: 显示当前所在路径。
  • cd: 切换目录。
    • cd ..: 返回上级。
    • cd ~: 进入家目录。
    • cd -: 返回最近访问的目录。

1.2 创建与删除 (touch, mkdir, rmdir, rm)

  • touch filename: 创建空文件或更新文件时间戳。
  • mkdir dirname: 创建目录。-p 递归创建多级目录。
  • rmdir dirname: 删除 目录。-p 连带父目录删除。
  • rm filename: 删除文件或目录(非常重要)。
    • -f: 强制删除,不询问。
    • -r: 递归删除(用于删除非空目录)。

1.3 复制与移动 (cp, mv)

  • cp src dst: 复制。-r 递归复制目录,-f 强制。
  • mv src dst: 移动或重命名。如果 dst 是存在的目录,则移动;如果是文件名,则重命名。

2.文件内容查看指令

  • cat: 查看文件内容。-n 显示行号。
  • more: 分页显示,只能向后翻。
  • less: 分页显示,支持前后翻页、搜索(/向下搜,?向上搜),推荐使用。
  • head -n X: 查看文件前 X 行(默认10行)。
  • tail -n X: 查看文件后 X 行。
    • tail -f filename: 循环读取,常用于实时监控日志。

3. 时间、帮助与辅助指令

  • date: 显示或设置时间。
    • 格式化显示:date +%Y-%m-%d
    • 时间戳转换:date +%s (时间转时间戳), date -d @1508749502 (时间戳转时间)。
  • cal: 查看日历。cal -y 2018 显示整年。
  • man: 查看命令手册。man 3 printf (查库函数),man 2 open (查系统调用)。
  • bc: 浮点运算计算器。
  • 热键:
    • Tab: 命令补全。
    • Ctrl + c: 终止程序。
    • Ctrl + d: 输入结束 (EOF) 或 退出。

4. 查找与搜索指令

  • find path -options: 在目录树中查找文件。
    • find . -name "test.c": 按文件名查找。
  • grep: 在文件中搜索字符串。
    • -i: 忽略大小写。
    • -n: 输出行号。
    • -v: 反向选择(显示不包含字符串的行)。

5. Linux 权限管理 (核心)

5.1 用户与角色

  • 超级用户 (root): 提示符 #,不受限制。
  • 普通用户: 提示符 $,受限。
  • 切换用户: su [user] (切换到root需输入密码)。
  • Sudo: sudo command 暂时以 root 权限执行指令(需配置 /etc/sudoers)。

5.2 文件属性与权限位

执行 ls -l 看到的信息:-rwxr-xr--

  • 第1位 (文件类型): d(目录), -(普通文件), l(链接), p(管道), b(块设备), c(字符设备)。
  • 第2-10位 (权限): 分为三组:拥有者(u)、所属组(g)、其他用户(o)。
  • 权限值:
    • r (Read, 4): 读。对目录为浏览信息。
    • w (Write, 2): 写。对目录为删除/移动文件。
    • x (Execute, 1): 执行。对目录为进入权限 (cd)。

5.3 修改权限 (chmod, chown, chgrp)

  • chmod: 修改权限。
    • 符号法: chmod u+w,o-x file
    • 数字法: chmod 755 file (rwx=7, rx=5)。
  • chown user:group file: 修改拥有者。
  • chgrp group file: 修改所属组。

5.4 默认权限与 umask

  • 新建文件默认权限 666,目录 777。
  • 实际权限 = 默认权限 & (~umask)。
  • 普通用户 umask 默认为 0002,root 为 0022。

5.5 目录权限与粘滞位

  • 目录权限悖论: 只要用户对目录有写权限 (w),就能删除目录下的任何文件,即使该用户对文件本身没有写权限。
  • 粘滞位 (Sticky Bit): chmod +t dir。设置后,该目录下的文件只能由:超级管理员、目录所有者、或文件所有者删除。
相关推荐
JY.yuyu1 分钟前
Docker常用命令——数据卷管理 / 端口映射 / 容器互联
运维·docker·容器
森G17 分钟前
七、04ledc-sdk--------makefile有变化
linux·c语言·arm开发·c++·ubuntu
驱动探索者22 分钟前
linux mailbox 学习
linux·学习·算法
alice--小文子27 分钟前
cursor-mcp工具使用
java·服务器·前端
lpruoyu42 分钟前
【Docker进阶-06】docker-compose & docker swarm
运维·docker·容器
China_Yanhy1 小时前
入职 Web3 运维日记 · 第 8 日:黑暗森林 —— 对抗 MEV 机器人的“三明治攻击”
运维·机器人·web3
艾莉丝努力练剑1 小时前
hixl vs NCCL:昇腾生态通信库的独特优势分析
运维·c++·人工智能·cann
酉鬼女又兒2 小时前
每天一个Linux命令_printf
linux·运维·服务器
翼龙云_cloud2 小时前
国际云代理商:2026年国际云注册风控升级实战指南 8 大平台无卡解决方案对比
服务器·阿里云·云计算
虾说羊2 小时前
docker容器化部署项目流程
运维·docker·容器