插件窝 干货文章 Linux系统中实用的命令及其用法

Linux系统中实用的命令及其用法

bash 目录 文件 递归 655    来源:    2025-04-18

Linux系统中有大量实用命令,掌握它们能极大提升工作效率。以下分类整理核心命令及用法示例:


一、文件与目录操作

  1. ls - 列出目录内容

    ls -l      # 详细列表(权限/大小/时间)
    ls -a      # 显示隐藏文件
    ls -lh     # 人类可读的文件大小(KB/MB)
    
  2. cd - 切换目录

    cd ~       # 返回家目录
    cd -       # 返回上一个目录
    
  3. cp/mv/rm - 复制/移动/删除

    cp -r dir1 dir2    # 递归复制目录
    mv old.txt new.txt # 重命名文件
    rm -i *.log        # 交互式删除(确认提示)
    
  4. find - 高级文件搜索

    find /var -name "*.log" -mtime +7  # 查找7天前的日志文件
    find . -size +10M -exec ls -lh {} \; # 查找大于10MB的文件并显示详情
    

二、文本处理

  1. grep - 文本搜索

    grep -r "error" /var/log/      # 递归搜索目录中的关键词
    grep -v "debug" file.log       # 排除包含"debug"的行
    
  2. awk/sed - 文本处理神器

    awk '{print $1,$3}' data.txt    # 打印第1和第3列
    sed 's/foo/bar/g' file.txt      # 替换文件中所有foo为bar
    
  3. head/tail - 查看文件首尾

    head -n 20 syslog      # 查看前20行
    tail -f /var/log/nginx/access.log  # 实时追踪日志
    

三、系统监控

  1. top/htop - 进程监控

    top -u mysql      # 监控MySQL用户进程
    htop             # 交互式增强版top(需安装)
    
  2. df/du - 磁盘空间

    df -h            # 查看磁盘使用情况(人类可读)
    du -sh /home/*   # 统计家目录各文件夹大小
    
  3. free - 内存状态

    free -m          # 以MB为单位显示内存
    

四、网络管理

  1. netstat/ss - 网络连接

    netstat -tulnp   # 查看监听端口及进程
    ss -s            # 统计socket使用情况(比netstat更快)
    
  2. curl/wget - 网络请求

    curl -I https://example.com  # 仅获取HTTP头
    wget --limit-rate=200k http://example.com/file.iso  # 限速下载
    
  3. traceroute/mtr - 路由追踪

    mtr -n 8.8.8.8   # 实时路由诊断(结合ping+traceroute)
    

五、权限管理

  1. chmod/chown - 修改权限/所有者

    chmod 755 script.sh    # 设置rwxr-xr-x
    chown user:group file  # 修改所有者和组
    
  2. sudo - 提权执行

    sudo -u postgres psql  # 以postgres用户身份运行命令
    

六、压缩与归档

  1. tar - 打包压缩

    tar -czvf backup.tar.gz /path   # 创建gzip压缩包
    tar -xzvf backup.tar.gz -C /tmp  # 解压到指定目录
    
  2. zip/unzip

    zip -r project.zip ./project/   # 递归压缩目录
    unzip -l archive.zip            # 查看压缩包内容
    

七、进程管理

  1. ps/pgrep/kill

    ps aux | grep nginx   # 查看nginx进程
    kill -9 $(pgrep -f "python script.py")  # 强制结束指定进程
    
  2. nohup - 后台运行

    nohup ./server.sh > output.log 2>&1 &  # 脱离终端持续运行
    

八、快捷键与小技巧

  • Ctrl+R:反向搜索历史命令
  • !!:重复上一条命令(如 sudo !!
  • alias:创建快捷命令
    bash alias ll='ls -alF'

掌握这些命令后,可应对90%的日常运维场景。建议通过 man [命令] 查阅手册获取更详细参数说明。