Linux命令

文件与目录操作

# 列出文件
ls           # 列出当前目录内容
ls -l        # 详细列表(权限、大小、时间)
ls -a        # 显示隐藏文件
ls -lh       # 人类可读的大小格式

# 目录切换
cd /path     # 切换到指定目录
cd ~         # 返回家目录
cd ..        # 返回上一级
cd -         # 返回上次所在目录

# 路径查看
pwd          # 显示当前目录路径

# 创建目录
mkdir dirname        # 创建目录
mkdir -p a/b/c       # 递归创建多级目录
mkdir dir{1,2,3}     # 批量创建多个目录

# 删除
rm file.txt          # 删除文件
rm -r dirname        # 递归删除目录
rm -rf dirname       # 强制删除(危险!)

# 移动/重命名
mv old.txt new.txt   # 重命名
mv file /path/       # 移动文件

# 复制
cp file1 file2       # 复制文件
cp -r dir1 dir2      # 复制目录
cp -a source dest    # 保留属性复制
cp -a source dest    # 保留属性复制

文件内容查看与编辑

查看文件

# 基础查看
cat file.txt        # 显示整个文件
less file.txt       # 分页查看(可前后翻页)
more file.txt       # 分页查看(只能向前)

# 查看部分内容
head -n 10 file.txt    # 查看前10行
tail -n 20 file.txt    # 查看后20行
tail -f log.txt        # 实时查看日志更新

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

文本编辑器

nano file.txt       # 简单易用的编辑器
vim file.txt        # 功能强大的编辑器
emacs file.txt      # 另一个强大的编辑器

文件搜索与查找

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

# 在文件中搜索文本
grep "pattern" file.txt          # 搜索包含pattern的行
grep -r "pattern" /path          # 递归搜索
grep -i "pattern" file.txt       # 忽略大小写
grep -v "pattern" file.txt       # 反向匹配(不包含)
grep -n "pattern" file.txt       # 显示行号

# 查找命令位置
which python        # 查找命令路径
whereis python      # 查找命令及手册页

系统信息与监控

系统信息

# 基础信息
uname -a           # 显示所有系统信息
hostname           # 显示主机名
whoami             # 显示当前用户名
date               # 显示日期时间

# 硬件信息
free -h            # 显示内存使用(人类可读)
df -h              # 显示磁盘空间
du -sh dirname     # 显示目录大小
top                # 实时显示进程(类似任务管理器)
htop               # 增强版top(需要安装)

# CPU信息
lscpu              # 显示CPU信息

进程管理

# 查看进程
ps                 # 显示当前终端进程
ps aux             # 显示所有进程详情
ps -ef | grep nginx # 查找特定进程

# 进程操作
kill PID           # 终止进程
kill -9 PID        # 强制终止
killall process    # 终止同名所有进程
pkill process      # 按名称终止进程

# 后台作业
jobs               # 查看后台作业
fg %1              # 将作业1调到前台
bg %2              # 将作业2放到后台运行
command &          # 在后台运行命令
nohup command &    # 后台运行且退出终端不终止

网络相关命令

# 网络状态
ifconfig           # 查看网络接口(旧版)
ip addr            # 查看IP地址(新版)
netstat -tulpn     # 查看端口监听情况
ss -tulpn          # 更快的netstat替代

# 连接测试
ping google.com    # 测试连通性
ping -c 4 host     # 发送4个包后停止
traceroute host    # 追踪路由路径

# 下载与传输
wget URL           # 下载文件
curl URL           # 传输数据
curl -O URL        # 下载文件
curl -I URL        # 只显示响应头

# SSH相关
ssh user@host      # SSH连接
scp file user@host:/path  # 复制到远程
scp user@host:/path/file . # 从远程复制

压缩与解压

# tar包
tar -cvf archive.tar file1 file2    # 创建tar包
tar -xvf archive.tar                # 解压tar包
tar -czvf archive.tar.gz dir        # 创建gzip压缩包
tar -xzvf archive.tar.gz            # 解压gzip包

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

# gzip
gzip file.txt                       # 压缩文件
gunzip file.txt.gz                  # 解压

用户与权限管理

# 用户管理
who                # 显示已登录用户
w                  # 显示登录用户及活动
last               # 显示登录历史
sudo command       # 以root权限执行

# 权限修改
chmod 755 file     # 修改文件权限
chmod u+x file     # 给所有者添加执行权限
chown user:group file  # 修改所有者和组
chgrp group file   # 修改文件所属组

# 文件权限说明
# r=4, w=2, x=1
# 755 = rwxr-xr-x
# 644 = rw-r--r--

实用工具与技巧

快捷键

Ctrl+C            # 终止当前命令
Ctrl+Z            # 暂停当前进程
Ctrl+D            # 退出终端/发送EOF
Ctrl+R            # 搜索历史命令
Ctrl+L            # 清屏
Tab               # 命令/路径补全
!!                # 重复上一条命令
!$                # 上一条命令的最后一个参数

管道与重定向

command1 | command2    # 管道:将命令1输出作为命令2输入
> file                 # 重定向输出到文件(覆盖)
>> file                # 追加输出到文件
2> error.log          # 重定向错误输出
&> output.log         # 重定向标准输出和错误输出

环境变量

echo $PATH           # 显示PATH变量
export VAR=value     # 设置环境变量
env                  # 显示所有环境变量

磁盘与挂载

# 挂载管理
mount                 # 显示已挂载的文件系统
mount /dev/sda1 /mnt  # 挂载设备
umount /mnt           # 卸载设备

# 磁盘检查
fdisk -l              # 列出磁盘分区
blkid                 # 显示块设备属性
lsblk                 # 列出块设备信息

包管理(不同发行版)

# Debian/Ubuntu (apt)
sudo apt update              # 更新包列表
sudo apt upgrade             # 升级所有包
sudo apt install package     # 安装包
sudo apt remove package      # 删除包

# RedHat/CentOS (yum/dnf)
sudo yum install package     # 安装包
sudo yum update              # 更新包
sudo yum remove package      # 删除包

# Arch Linux (pacman)
sudo pacman -S package       # 安装包
sudo pacman -Syu             # 更新系统和包
sudo pacman -R package       # 删除包

实用示例组合

查找并处理文件

# 查找所有.log文件并统计行数
find . -name "*.log" -exec wc -l {} \;

# 查找包含"error"的日志文件
grep -r "error" /var/log/ | head -20

# 监控日志文件变化
tail -f /var/log/syslog | grep "ERROR"

系统监控组合命令

# 显示CPU使用率最高的10个进程
ps aux --sort=-%cpu | head -11

# 显示内存使用率最高的10个进程
ps aux --sort=-%mem | head -11

# 查看磁盘使用率最大的目录
du -sh /* | sort -rh | head -10
posted @ 2025-12-01 18:03  四月丿  阅读(3)  评论(0)    收藏  举报