Files
chill_notes/Linux/常用命令.md
2026-04-21 20:22:51 +08:00

10 KiB
Executable File
Raw Blame History

Linux 常用命令

日常运维中最常用的 Linux 命令汇总


📦 软件包管理 (apt)

# 更新软件源
sudo apt-get update

# 升级所有可升级的软件包
sudo apt-get upgrade

# 安装软件包
sudo apt-get install <package>

# 卸载软件包(保留配置)
sudo apt-get remove <package>

# 卸载软件包(删除配置)
sudo apt-get purge <package>

# 自动修复依赖
sudo apt-get -f install

# 清理缓存
sudo apt-get clean
sudo apt-get autoclean

apt vs aptitudeaptitude 是 apt 的高级封装,功能更强大,但 apt 更常用。


📁 文件操作

ls - 列出目录

ls                    # 列出当前目录文件
ls -l                # 详细列表
ls -a                # 显示隐藏文件
ls -lh               # 人性化大小
ls -la               # 详细+隐藏
ls -lt               # 按时间排序
ls -lS               # 按大小排序

cd - 切换目录

cd /path             # 切换到指定目录
cd ..               # 返回上级目录
cd ~                # 返回家目录
cd -                # 返回上一次目录
cd .                # 当前目录(无意义)
pwd                  # 显示当前路径

cp - 复制

cp file /dest/              # 复制文件
cp -r folder /dest/         # 递归复制目录
cp -a file /dest/           # 保留属性(权限、时间戳)
cp -p file /dest/           # 保留权限
cp -u file /dest/           # 仅源更新时复制
cp -v file /dest/           # 显示进度

mv - 移动/重命名

mv file /dest/              # 移动文件
mv oldname newname          # 重命名
mv -u file /dest/          # 源更新时才移动
mv -v file /dest/          # 显示进度

rm - 删除

rm file                    # 删除文件
rm -f file                # 强制删除
rm -r folder              # 递归删除目录
rm -rf folder             # 强制递归删除(危险!)
rm -v file                # 显示删除动作

⚠️ 警告rm -rf / 会删除整个系统!使用前务必确认路径。

mkdir - 创建目录

mkdir dir                  # 创建目录
mkdir -p path/to/dir       # 递归创建(父目录不存在时自动创建)
mkdir -m 755 dir           # 指定权限

touch - 创建文件/更新时间戳

touch file                 # 创建空文件
touch file1 file2 file3   # 批量创建
touch -t 202401011200 file  # 指定时间

🔐 权限管理

chmod - 变更权限

# 8进制方式最常用
chmod 755 file             # rwxr-xr-x
chmod 644 file             # rw-r--r--
chmod 600 file             # rw-------
chmod 700 folder           # rwx------
chmod 777 file             # 所有人可读写执行(危险!)

# 符号方式
chmod u+x file            # 给所有者添加执行权限
chmod g-w file            # 给组移除写权限
chmod o+r file            # 给其他人添加读权限
chmod a+x file            # 所有人添加执行权限

# 选项
chmod -R 755 folder       # 递归设置
chmod -v file             # 显示动作

chown - 变更所有者

chown user file                    # 变更所有者
chown user:group file              # 变更所有者和组
chown -R user:group folder/        # 递归变更

🔍 查看文件

cat - 显示文件内容

cat file                    # 显示全部内容
cat -n file                # 显示行号
cat -b file                # 非空行显示行号
tac file                   # 反向显示(最后一行在前)

head/tail - 显示头部/尾部

head file                   # 默认显示前10行
head -n 20 file            # 显示前20行
head -c 100 file           # 显示前100字节

tail file                   # 默认显示后10行
tail -n 20 file            # 显示后20行
tail -f file               # 实时追踪日志Ctrl+C 退出)
tail -F file               # 追踪重命名后的文件

more/less - 分页查看

more file                   # 逐页查看(只能向下)
less file                   # 交互式查看(可上下翻页)
    # less 中按键:
    # j/k 或 方向键 上下滚动
    # q 退出
    # /keyword 搜索
    # n 跳到下一个匹配
    # g/G 跳到开头/结尾

🌐 网络命令

ifconfig - 网卡配置

ifconfig                    # 显示所有网卡状态
ifconfig -a                 # 显示所有网卡(包括未激活)
ifconfig eth0              # 显示指定网卡
ifconfig eth0 up           # 激活网卡
ifconfig eth0 down         # 关闭网卡
ifconfig eth0 192.168.1.100  # 设置IP临时

ping - 测试连通性

ping 192.168.1.1           # ping IP
ping www.google.com        # ping 域名
ping -c 4 192.168.1.1      # 只ping 4次
ping -i 2 192.168.1.1      # 间隔2秒

curl/wget - 下载

curl http://example.com/file.tar.gz -O    # 下载文件
curl -L http://example.com               # 跟随重定向
curl -o output.file http://...           # 指定输出名
curl -I http://example.com               # 只查Header

wget http://example.com/file.tar.gz      # 下载文件
wget -c http://example.com/file          # 断点续传
wget -r http://example.com/             # 递归下载

⚙️ 进程管理

ps - 进程快照

ps                          # 当前终端进程
ps aux                      # 所有进程BSD格式
ps -ef                      # 所有进程(标准格式)
ps -ef | grep nginx         # 查找nginx进程
ps -u user                  # 某用户的进程
ps --forest                 # 显示进程树

top/htop - 动态监控

top                         # 动态监控(按 q 退出)
htop                        # 更友好的top需安装
    # top 中按键:
    # P 按CPU排序
    # M 按内存排序
    # N 按PID排序
    # k 杀进程
    # r 重设优先级

kill - 终止进程

kill PID                    # 正常终止
kill -9 PID                 # 强制终止
kill -15 PID                # 优雅终止(默认)
kill -l                     # 查看信号列表
killall nginx               # 按名称终止所有进程
pkill nginx                 # 按名称终止(支持正则)

📦 压缩解压

tar - 打包/解包

# 解压
tar -xvf file.tar.gz               # 解压tar.gz
tar -xvf file.tar.bz2              # 解压tar.bz2
tar -xvf file.tar.xz               # 解压tar.xz
tar -xvf file.tar -C /dest/        # 解压到指定目录
tar -tzf file.tar.gz               # 查看压缩包内容

# 打包
tar -cvf file.tar.gz /path/         # 打包并压缩
tar -czvf file.tar.gz /path/        # 显示进度
tar -cvzf file.tar.gz /path/        # gzip压缩
tar -cvjf file.tar.bz2 /path/       # bzip2压缩

zip/unzip

zip -r archive.zip folder/         # 压缩目录
zip -P password archive.zip file   # 带密码
unzip archive.zip                  # 解压
unzip archive.zip -d /dest/        # 解压到目录
unzip -l archive.zip                # 查看内容

🔧 系统命令

df/du - 磁盘使用

df -h                          # 显示磁盘使用情况
df -i                          # 显示inode使用
du -sh folder/                 # 目录总大小
du -h --max-depth=1            # 子目录大小
du -sh * | sort -h             # 按大小排序显示

free - 内存使用

free                           # 显示内存(字节)
free -h                         # 人性化显示
free -m                         # 以MB显示
free -s 5                       # 每5秒刷新

uname - 系统信息

uname -a                        # 全部信息
uname -r                        # 内核版本
uname -m                        # CPU架构
cat /etc/os-release             # 发行版信息

系统时间

date                           # 显示当前时间
date -s "2024-01-01 12:00:00"  # 设置时间
hwclock --systohc              # 同步到硬件时钟
timedatectl                    # 时间管理systemd

📝 文本处理

grep - 搜索

grep "keyword" file             # 搜索文件中含有关键字的行
grep -i "keyword" file          # 忽略大小写
grep -r "keyword" folder/       # 递归搜索
grep -n "keyword" file          # 显示行号
grep -v "keyword" file          # 显示不匹配的行
grep -c "keyword" file          # 计数
grep -E "word1|word2" file     # 多个关键词(正则)

find - 查找文件

find / -name "file.txt"         # 按名字查找
find / -type d -name "folder"   # 查找目录
find / -size +100M              # 查找大于100M的文件
find / -mtime -7                # 查找7天内修改的文件
find / -user username           # 查找某用户的文件
find / -perm 755               # 按权限查找

sed - 文本替换

sed 's/old/new/g' file                    # 替换所有
sed -i 's/old/new/g' file                # 直接修改文件
sed '1,10s/old/new/g' file               # 替换1-10行
sed '/keyword/d' file                     # 删除匹配行

🔗 链接

ln - 创建链接

ln file hardlink                 # 创建硬链接
ln -s file symlink              # 创建软链接(快捷方式)
ln -sf file newlink             # 强制创建

💻 其他常用

sudo/su - 切换用户

sudo command                    # 以root执行
sudo -u user command           # 以指定用户执行
sudo -i                        # 切换到root shell
su - username                   # 切换用户

reboot/shutdown - 重启关机

shutdown -h now                # 立即关机
shutdown -h +10                # 10分钟后关机
shutdown -c                    # 取消关机
reboot                         # 重启
poweroff                       # 关机

history - 命令历史

history                        # 显示历史命令
history -c                     # 清除历史
!n                            # 执行第n条命令
!!                            # 执行上一条命令
Ctrl+R                         # 搜索历史

参考:Ubuntu 新手命令集合