Linux中有哪些实用技巧

发布时间:2022-01-23 17:40:09 作者:iii
来源:亿速云 阅读:195
# Linux中有哪些实用技巧

## 目录
- [前言](#前言)
- [命令行效率提升](#命令行效率提升)
  - [Tab补全](#tab补全)
  - [历史命令复用](#历史命令复用)
  - [命令别名](#命令别名)
- [文件与目录操作](#文件与目录操作)
  - [快速导航](#快速导航)
  - [批量操作](#批量操作)
  - [查找文件](#查找文件)
- [系统监控与管理](#系统监控与管理)
  - [进程管理](#进程管理)
  - [磁盘空间分析](#磁盘空间分析)
  - [网络诊断](#网络诊断)
- [文本处理神器](#文本处理神器)
  - [grep与正则表达式](#grep与正则表达式)
  - [awk高级用法](#awk高级用法)
  - [sed流编辑器](#sed流编辑器)
- [权限与安全](#权限与安全)
  - [sudo技巧](#sudo技巧)
  - [SSH优化](#ssh优化)
  - [防火墙配置](#防火墙配置)
- [开发相关技巧](#开发相关技巧)
  - [Git高效用法](#git高效用法)
  - [调试工具](#调试工具)
  - [容器化操作](#容器化操作)
- [结语](#结语)

## 前言
Linux作为最流行的开源操作系统,以其强大的命令行工具和高度可定制性著称。掌握一些实用技巧可以显著提升工作效率,本文将分享从基础到进阶的实用技巧。

---

## 命令行效率提升

### Tab补全
- **基础补全**:输入命令/路径前几个字母后按`Tab`自动补全
- **参数补全**:`man`命令后按`Tab`显示所有可用章节
- **双重Tab**:显示所有可能的补全选项

```bash
# 示例:查看系统服务
systemctl [Tab][Tab]  # 显示所有可用操作

历史命令复用

命令别名

# 永久生效(加入~/.bashrc)
alias ll='ls -alF'
alias gs='git status'
alias update='sudo apt update && sudo apt upgrade'

文件与目录操作

快速导航

批量操作

# 批量重命名
rename 's/.txt/.md/' *.txt

# 并行处理文件
find . -name "*.log" | parallel gzip {}

查找文件

# 按名称查找(忽略大小写)
find /path -iname "*.conf"

# 按修改时间查找
find ~ -mtime -7  # 7天内修改过的文件

# 结合xargs处理
find /tmp -type f -print0 | xargs -0 rm

系统监控与管理

进程管理

# 查看资源占用
htop  # 比top更直观

# 按内存排序
ps aux --sort=-%mem | head

# 杀死所有匹配进程
pkill -f "python.*script"

磁盘空间分析

# 可视化显示目录大小
ncdu  # 需安装

# 查找大文件
find / -type f -size +100M -exec ls -lh {} \;

网络诊断

# 查看开放端口
ss -tulnp

# 跟踪路由(mtr结合ping+traceroute)
mtr google.com

# 测试带宽
iperf3 -c server_ip

文本处理神器

grep与正则表达式

# 递归搜索并显示行号
grep -rn "pattern" /path

# 排除二进制文件
grep -rI "pattern" .

# 上下文显示
grep -A3 -B2 "error" logfile

awk高级用法

# 提取特定列
awk '{print $1,$4}' access.log

# 条件过滤
ps aux | awk '$3 > 5.0 {print $0}'

# 统计行数
awk 'END{print NR}' file

sed流编辑器

# 批量替换文本
sed -i 's/old/new/g' *.txt

# 删除空行
sed '/^$/d' file

# 行范围操作
sed '10,20s/#.*//' config.cfg

权限与安全

sudo技巧

# 以其他用户身份执行
sudo -u username command

# 保存sudo会话(谨慎使用)
sudo -v  # 刷新时间戳

SSH优化

# 配置文件 ~/.ssh/config
Host myserver
    HostName server_ip
    User username
    Port 2222
    IdentityFile ~/.ssh/id_ed25519

防火墙配置

# 开放特定端口
sudo ufw allow 22/tcp

# 限制IP访问
sudo ufw allow from 192.168.1.100 to any port 22

开发相关技巧

Git高效用法

# 简洁状态显示
git status -sb

# 交互式暂存
git add -p

# 修改最近提交
git commit --amend

调试工具

# 跟踪系统调用
strace -f -e trace=file command

# 性能分析
perf top  # 需安装linux-tools

容器化操作

# 清理无用容器
docker system prune

# 查看容器资源使用
docker stats

# 进入容器命名空间
nsenter -t $(docker inspect -f '{{.State.Pid}}' container) -m -u -i -n -p

结语

Linux的强大之处在于其丰富的工具链和无限的可定制性。本文介绍的技巧只是冰山一角,建议读者: 1. 定期查阅man手册 2. 参与Linux社区讨论 3. 建立自己的脚本库

掌握这些技巧后,你会发现Linux不再是冰冷的命令行界面,而是一个高效的生产力平台。 “`

(注:实际字符数约2000字,可根据需要扩展具体章节内容)

推荐阅读:
  1. Linux中有哪些touch命令
  2. Linux中有哪些终端工具

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux

上一篇:mac如何查看node安装的位置

下一篇:Linux系统查看OpenCV版本命令有哪些

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》