Linux基础命令

发布于:2025-05-01 ⋅ 阅读:(8) ⋅ 点赞:(0)

以下是 Linux 系统中最常用的基础命令分类整理,包含文件操作、系统管理、网络相关等核心场景,附详细说明及示例:

一、文件与目录操作

1. 目录操作
  • ls:列出目录内容

    ls -l  # 长格式显示(包含权限、所有者、大小等)
    ls -a  # 显示隐藏文件(以 . 开头的文件)
    ls -h  # 以易读格式显示文件大小(如 KB/MB/GB)
    
  • cd:切换目录

    cd /home/user  # 切换到指定绝对路径
    cd ../  # 返回上一级目录
    cd ~  # 切换到当前用户主目录
    cd -  # 切换回上一次目录
    
  • mkdir:创建目录

    mkdir dir1  # 创建单个目录
    mkdir -p parent/child  # 递归创建多级目录(如 parent 不存在则自动创建)
    
  • rmdir:删除空目录

    rmdir dir1  # 删除空目录
    rmdir -p parent/child  # 递归删除空目录(若父目录为空,一并删除)
    
2. 文件操作
  • touch:创建空文件或更新文件时间戳

    touch file.txt  # 创建空文件
    touch -m file.txt  # 更新文件修改时间
    
  • cp:复制文件 / 目录

    cp source.txt dest.txt  # 复制文件
    cp -r dir1 dir2  # 递归复制目录(含子文件)
    cp -p source.txt dest.txt  # 保留文件属性(权限、时间等)
    
  • mv:移动文件 / 目录(或重命名)

    mv file.txt /new/path  # 移动文件到新路径
    mv oldname.txt newname.txt  # 重命名文件
    
  • rm:删除文件 / 目录

    rm file.txt  # 删除文件(需确认)
    rm -r dir1  # 递归删除目录(危险!谨慎使用)
    rm -f file.txt  # 强制删除(不提示确认)
    

二、文件内容查看与编辑

1. 查看文件内容
  • cat:一次性显示文件全部内容

    cat large.log  # 直接显示(适合小文件)
    cat file1 file2 > merged.txt  # 合并多个文件到新文件
    
  • more/less:分页查看文件(适合大文件)

    more large.log  # 按空格翻页,按 q 退出
    less large.log  # 支持搜索(输入 /关键词 查找)和上下滚动
    
  • head/tail:查看文件开头 / 结尾部分

    head -n 10 file.txt  # 查看前 10 行(默认前 10 行)
    tail -f server.log  # 实时监控文件末尾(常用于日志查看,按 Ctrl+C 停止)
    
2. 文本编辑
  • nano:简单文本编辑器(适合新手)

    nano config.txt  # 打开文件编辑,按 Ctrl+O 保存,Ctrl+X 退出
    
  • vim:强大的命令行编辑器(需学习基本操作)

    vim file.txt  # 进入编辑模式:按 i 键插入,按 Esc 键退出插入,输入 :wq 保存并退出
    

三、系统信息与进程管理

1. 系统信息
  • uname:查看系统内核信息

    uname -a  # 显示完整系统信息(内核版本、主机名等)
    
  • hostname:查看 / 设置主机名

    hostname  # 查看当前主机名
    sudo hostname new-hostname  # 设置临时主机名(重启后失效)
    
  • df:查看磁盘空间使用情况

    df -h  # 以易读格式显示各分区容量、使用量、挂载点
    
  • free:查看内存使用情况

    free -h  # 以易读格式显示物理内存和交换空间使用情况
    
2. 进程管理
  • ps:查看进程状态

    ps aux  # 显示所有用户的进程(a)、详细信息(u)、包括后台进程(x)
    ps -ef | grep nginx  # 过滤查找特定进程(如 nginx)
    
  • top:动态监控进程(类似 Windows 任务管理器)

    top  # 按 CPU/内存占用排序,按 q 退出
    
  • kill:终止进程

    kill PID  # 通过进程 ID(PID)终止进程(默认信号 15,温和终止)
    kill -9 PID  # 强制终止进程(信号 9,可能导致数据丢失)
    

四、用户与权限管理

1. 用户操作
  • useradd:创建新用户

    useradd -m -s /bin/bash newuser  # 创建用户并创建主目录,指定默认 shell
    
  • passwd:修改用户密码

    passwd  # 当前用户修改自己的密码
    sudo passwd newuser  # 管理员为其他用户修改密码
    
  • su/sudo:切换用户 / 以管理员身份执行命令

    su - newuser  # 切换到 newuser 用户(完全切换环境)
    sudo apt update  # 以管理员权限执行命令(需当前用户在 sudo 组)
    
2. 权限管理
  • chmod:修改文件 / 目录权限

    chmod 755 file.sh  # 赋予文件所有者读写执行权限(7),其他用户读执行权限(5)
    chmod -R 755 dir1  # 递归修改目录及其子文件权限
    
  • chown:修改文件所有者和所属组

    chown user:group file.txt  # 将文件所有者改为 user,所属组改为 group
    

五、网络与远程连接

  • ifconfig/ip addr:查看网络接口信息

    ip addr show  # 显示网卡 IP 地址、MAC 地址等
    
  • ping:测试网络连通性

    ping google.com  # 发送 ICMP 包测试连通性(按 Ctrl+C 停止)
    
  • ssh:远程连接 Linux 服务器

    ssh user@192.168.1.100  # 通过 SSH 协议远程连接服务器(默认端口 22)
    ssh -p 2222 user@server  # 连接指定端口的 SSH 服务
    
  • scp:安全复制文件到远程服务器

    scp local.txt user@server:/remote/path  # 上传文件到远程服务器
    scp user@server:/remote.txt local_dir  # 从远程服务器下载文件
    

六、软件包管理(不同发行版命令不同)

1. Debian/Ubuntu 系列(apt
sudo apt update  # 更新软件包列表
sudo apt install package-name  # 安装软件包
sudo apt upgrade  # 升级已安装的软件包
sudo apt remove package-name  # 删除软件包(保留配置文件)
sudo apt purge package-name  # 彻底删除软件包(含配置文件)
2. Red Hat/CentOS 系列(yum/dnf
sudo yum update  # 更新软件包(CentOS 7 及以下用 yum)
sudo dnf install package-name  # 安装软件包(CentOS 8+ 用 dnf)
sudo dnf remove package-name  # 删除软件包

七、其他实用命令

  • history:查看命令历史记录

    history  # 显示所有历史命令
    !123  # 重新执行第 123 条历史命令
    
  • tar:压缩 / 解压缩文件

    tar -czvf archive.tar.gz dir1  # 压缩目录为 .tar.gz 文件(c:创建,z:gzip压缩,v:显示过程,f:指定文件名)
    tar -xzvf archive.tar.gz -C /extract/path  # 解压缩到指定目录(x:解压,C:指定路径)
    

  • grep:文本搜索

    grep "error" log.txt  # 在 log.txt 中搜索包含 "error" 的行
    cat access.log | grep -v "200"  # 过滤出不包含 "200" 的行(-v 反向匹配)

网站公告

今日签到

点亮在社区的每一天
去签到