← 返回主页
NOTE

Linux 命令速查

整理 Linux 常用命令速查,覆盖文件、进程、网络与系统管理。

文件与目录操作

文件信息查看

  • file - 查看文件类型

    file filename
    
  • which - 查找命令路径

    which command          # 查找命令位置
    which -a command       # 查找所有匹配的命令
    

目录列表与导航

  • ls - 列出目录内容

    ls                    # 简单列表
    ls -l                 # 详细列表(显示权限、所有者、大小等)
    ls -a                 # 显示隐藏文件
    ls -lh                # 人类可读的文件大小
    
  • pwd - 显示当前目录

    pwd                   # 显示当前路径
    pwd -P                # 显示物理路径(非符号链接路径)
    
  • cd - 切换目录

    cd path               # 切换到指定路径
    cd ~                  # 返回家目录
    cd -                  # 返回上一个目录
    cd ..                 # 返回上级目录
    

文件操作

  • touch - 创建文件/更新修改时间

    touch filename.txt                 # 创建文件
    touch file{1..5}.txt               # 批量创建文件
    
  • cp - 复制文件/目录

    cp file1.txt file2.txt            # 复制文件
    cp -r dir1 dir2                   # 递归复制目录
    cp -i source dest                 # 交互式复制(覆盖前确认)
    
  • mv - 移动/重命名文件

    mv old.txt new.txt                # 重命名文件
    mv file.txt /target/dir/          # 移动文件
    
  • rm - 删除文件/目录

    rm file.txt                       # 删除文件
    rm -r directory                   # 递归删除目录
    rm -f file.txt                    # 强制删除(无确认)
    
  • mkdir - 创建目录

    mkdir dirname                     # 创建目录
    mkdir -p parent/child             # 创建多级目录
    mkdir -m 755 dirname              # 创建带权限的目录
    
  • rmdir - 删除空目录

    rmdir dirname                     # 删除空目录
    

文件内容查看

  • cat - 查看文件内容

    cat file.txt                      # 查看文件内容
    cat -n file.txt                   # 显示行号
    cat file1.txt file2.txt           # 合并多个文件
    
  • less - 分页查看文件

    less file.txt                     # 分页查看
    # 常用操作:空格键(向下翻页)、b(向上翻页)、/pattern(搜索)、q(退出)
    
  • head - 查看文件开头

    head file.txt                     # 查看前10行
    head -n 20 file.txt               # 查看前20行
    
  • tail - 查看文件末尾

    tail file.txt                     # 查看后10行
    tail -n 20 file.txt               # 查看后20行
    tail -f logfile.log               # 实时监控日志文件
    

文本处理

内容提取与过滤

  • grep - 文本搜索

    grep "pattern" file.txt           # 基本搜索
    grep -i "pattern" file.txt        # 忽略大小写
    grep -r "pattern" /path           # 递归搜索目录
    grep -v "pattern" file.txt        # 反向匹配(排除模式)
    grep -n "pattern" file.txt        # 显示行号
    
  • cut - 按列提取内容

    cut -d':' -f1 /etc/passwd         # 提取第一列(以冒号分隔)
    cut -c1-5 file.txt                # 提取前5个字符
    

文本转换与处理

  • sed - 流编辑器

    sed 's/old/new/g' file.txt        # 替换文本
    sed '/pattern/d' file.txt         # 删除匹配行
    sed -n '5,10p' file.txt           # 打印5-10行
    
  • awk - 文本处理语言

    awk '{print $1}' file.txt         # 打印第一列
    awk -F: '{print $1}' /etc/passwd  # 指定分隔符
    awk '$3 > 1000' /etc/passwd       # 条件过滤
    
  • sort - 排序

    sort file.txt                     # 字典序排序
    sort -n file.txt                  # 数值排序
    sort -r file.txt                  # 逆序排序
    sort -u file.txt                  # 去重排序
    
  • uniq - 去重

    uniq file.txt                     # 去除连续重复行
    uniq -c file.txt                  # 计数重复行
    
  • wc - 字数统计

    wc file.txt                       # 统计行数、词数、字节数
    wc -l file.txt                    # 只统计行数
    wc -w file.txt                    # 只统计词数
    

权限管理

权限修改

  • chmod - 修改文件权限

    chmod +x script.sh                # 添加执行权限
    chmod 755 file.txt                # 数字格式设置权限
    chmod u+x,g-w,o=r file.txt        # 符号格式设置权限
    chmod -R 755 directory/           # 递归修改目录权限
    
  • chown - 修改文件所有者

    chown user file.txt               # 修改所有者
    chown user:group file.txt         # 同时修改所有者和组
    chown -R user:group directory/    # 递归修改
    
  • chgrp - 修改文件所属组

    chgrp groupname file.txt          # 修改所属组
    chgrp -R groupname directory/     # 递归修改
    

特殊权限

  • SUID/SGID/Sticky Bit
    chmod u+s file                   # 设置SUID
    chmod g+s directory              # 设置SGID
    chmod +t directory               # 设置Sticky Bit
    chmod 4755 file                  # 数字格式设置SUID
    

系统管理

进程管理

  • ps - 查看进程

    ps aux                           # 查看所有进程
    ps -ef | grep processname        # 查找特定进程
    
  • top - 实时进程监控

    top                              # 实时系统监控
    top -u username                  # 监控特定用户进程
    
  • kill - 终止进程

    kill 1234                        # 终止指定PID进程
    kill -9 1234                     # 强制终止进程
    pkill processname                # 按进程名终止
    

系统服务

  • systemctl - 服务管理
    systemctl start servicename      # 启动服务
    systemctl stop servicename       # 停止服务
    systemctl status servicename     # 查看服务状态
    systemctl enable servicename     # 设置开机启动
    

磁盘管理

  • df - 磁盘空间查看

    df -h                            # 人类可读格式显示磁盘使用
    df -i                            # 显示inode使用情况
    
  • du - 目录空间查看

    du -sh directory/                # 显示目录总大小
    du -h --max-depth=1 directory/   # 显示一级子目录大小
    

网络工具

网络诊断

  • ping - 网络连通性测试

    ping example.com                 # 基本ping测试
    ping -c 4 example.com            # 指定ping次数
    
  • netstat - 网络状态查看

    netstat -tuln                    # 查看监听端口
    netstat -r                       # 查看路由表
    
  • ssh - 远程连接

    ssh user@hostname                # 基本连接
    ssh -p 2222 user@hostname        # 指定端口连接
    

文件传输

  • scp - 安全复制

    scp file.txt user@host:/path/    # 复制到远程
    scp -r dir/ user@host:/path/     # 递归复制目录
    
  • rsync - 同步工具

    rsync -avz source/ dest/         # 本地同步
    rsync -avz -e ssh src/ user@host:dest/  # 远程同步
    

压缩与归档

常见压缩工具

  • tar - 打包归档

    tar -czvf archive.tar.gz directory/    # 创建gzip压缩包
    tar -xzvf archive.tar.gz               # 解压gzip包
    tar -cjvf archive.tar.bz2 directory/   # 创建bzip2压缩包
    tar -xjvf archive.tar.bz2              # 解压bzip2包
    
  • gzip - 压缩工具

    gzip file.txt                     # 压缩文件(生成file.txt.gz)
    gzip -d file.txt.gz               # 解压缩
    
  • zip - 跨平台压缩

    zip archive.zip file1.txt file2.txt    # 创建zip压缩包
    unzip archive.zip                      # 解压zip包
    

用户管理

用户账户操作

  • useradd - 添加用户

    useradd username                  # 创建用户
    useradd -m username               # 创建用户并创建家目录
    useradd -G groupname username     # 创建用户并添加到附加组
    
  • passwd - 修改密码

    passwd                           # 修改当前用户密码
    passwd username                  # 修改指定用户密码
    
  • usermod - 修改用户

    usermod -aG groupname username   # 将用户添加到附加组
    usermod -L username              # 锁定用户账户
    usermod -U username              # 解锁用户账户
    

用户组管理

  • groupadd - 添加组

    groupadd groupname               # 创建用户组
    
  • groups - 查看用户所属组

    groups username                  # 查看用户所属组
    

实用工具

查找与定位

  • find - 文件查找

    find /path -name "*.txt"         # 按名称查找
    find /path -type f -mtime -7     # 查找7天内修改的文件
    find /path -size +100M           # 查找大于100MB的文件
    
  • locate - 快速文件查找

    locate filename                  # 快速查找文件
    updatedb                         # 更新locate数据库
    

定时任务

  • crontab - 定时任务管理
    crontab -e                       # 编辑定时任务
    crontab -l                       # 查看定时任务
    crontab -r                       # 删除所有定时任务
    

系统监控

  • free - 内存使用查看

    free -h                          # 人类可读格式显示内存使用
    
  • uptime - 系统运行时间

    uptime                           # 显示系统运行时间和负载
    

高级技巧

命令组合

  • 管道 - 命令连接

    ps aux | grep python             # 查找Python进程
    cat file.txt | sort | uniq       # 排序并去重
    
  • 重定向 - 输入输出控制

    command > file.txt               # 输出重定向到文件
    command >> file.txt              # 输出追加到文件
    command < file.txt               # 从文件读取输入
    command 2> error.log             # 错误输出重定向
    

后台执行

  • 作业控制
    command &                        # 后台运行命令
    jobs                             # 查看后台作业
    fg %1                            # 将作业1调到前台
    bg %1                            # 在后台继续运行作业1
    

历史命令

  • history - 命令历史
    history                          # 查看命令历史
    history 10                       # 查看最近10条命令
    !n                               # 执行历史中第n条命令
    !!                               # 执行上一条命令
    

使用提示

  1. 使用 man command 查看任何命令的详细手册
  2. 大多数命令支持 --help 参数显示简要帮助
  3. 使用 Tab 键补全命令和文件名
  4. 使用 Ctrl+R 搜索命令历史

注意:部分命令可能需要 root 权限,使用 sudo 前缀执行