插件窝 干货文章 适用于Linux系统的cmd命令技巧与窍门

适用于Linux系统的cmd命令技巧与窍门

bash 命令 文件 file 1005    来源:    2025-04-08

Linux 命令行技巧与窍门

作为IT工程师,掌握高效的Linux命令行技巧能极大提升工作效率。以下是一些实用技巧:

基础导航与操作

  1. 快速导航

    cd -       # 返回上一个工作目录
    pushd /path # 将目录压入栈
    popd       # 弹出栈顶目录
    
  2. 历史命令

    !!        # 重复上一条命令
    !$        # 上一条命令的最后一个参数
    !ssh      # 执行最近以ssh开头的命令
    Ctrl+R    # 反向搜索命令历史
    
  3. 通配符扩展

    ls *.log       # 列出所有.log文件
    ls {a,b,c}.txt # 匹配a.txt, b.txt, c.txt
    ls file{1..10} # 匹配file1到file10
    

文件处理技巧

  1. 高效查看文件

    less +F file.log # 实时跟踪文件(类似tail -f)
    head -n 20 file  # 查看前20行
    tail -n 30 file  # 查看后30行
    
  2. 查找文件

    find /path -name "*.conf" -mtime -7 # 查找7天内修改的.conf文件
    locate filename                     # 快速查找(需先updatedb)
    grep -r "pattern" /path            # 递归搜索内容
    
  3. 文件比较

    diff -u file1 file2    # 统一格式差异比较
    vimdiff file1 file2    # 使用vim可视化比较
    comm -12 file1 file2   # 显示两个文件共有的行
    

进程管理

  1. 进程监控

    htop               # 增强版top
    watch -n 1 "ps aux | grep process" # 每秒监控进程
    pidstat -p PID 1   # 监控特定进程资源使用
    
  2. 后台任务

    command &          # 后台运行
    nohup command &    # 退出终端后继续运行
    disown -h %1       # 使作业与终端分离
    

网络相关

  1. 网络诊断

    curl -v http://example.com  # 详细HTTP请求
    mtr hostname                # traceroute+ping组合
    ss -tulnp                  # 查看监听端口(现代版netstat)
    
  2. 数据传输

    rsync -avz source/ user@host:dest/ # 高效同步
    scp -C file user@host:path        # 压缩传输
    nc -l 1234 > file                 # 简单文件接收
    

系统信息

  1. 硬件信息

    lscpu               # CPU信息
    lsblk               # 块设备信息
    dmidecode           # 详细硬件信息
    
  2. 性能监控

    vmstat 1           # 系统资源使用概况
    iostat -x 1        # 磁盘I/O统计
    sar -n DEV 1       # 网络接口统计
    

高级技巧

  1. 命令行编辑

    Ctrl+A    # 移动到行首
    Ctrl+E    # 移动到行尾
    Ctrl+U    # 删除到行首
    Ctrl+K    # 删除到行尾
    Alt+.     # 插入上一条命令的最后一个参数
    
  2. 命令组合

    command1 | tee file.txt # 同时输出到屏幕和文件
    command1 && command2    # command1成功才执行command2
    command1 || command2    # command1失败才执行command2
    
  3. 批量处理

    parallel -j 4 wget {} ::: url1 url2 url3 # 并行下载
    for i in {1..10}; do command $i; done   # 简单循环
    
  4. 正则表达式

    grep -E 'pattern1|pattern2' file # 扩展正则
    sed -E 's/([0-9]+)/\1/' file    # 使用捕获组
    awk '/pattern/ {print $1}' file  # 模式匹配处理
    
  5. SSH技巧

    ssh -L 8080:localhost:80 user@host # 本地端口转发
    ssh -D 1080 user@host            # SOCKS代理
    ssh-copy-id user@host            # 复制公钥
    

这些技巧只是Linux命令行强大功能的冰山一角。掌握它们能显著提高工作效率,建议在实际工作中多加练习和应用。