外观
常用命令
约 1004 字大约 3 分钟
2025-06-19
整理 Linux 日常开发中最常用的命令,按功能分类。
sort 命令
对文件各行进行排序,可视为强大的数据治理工具。
基本用法
sort [选项] 文件不指定文件或传入 - 时,从标准输入读取。
常用选项
| 选项 | 说明 |
|---|---|
-m | 合并已排序的文件 |
-c | 检查文件是否已排序,未排序则报错退出 |
-u | 去重,相同行只保留一行 |
-o 文件 | 输出到指定文件 |
-d | 字典序(仅字母、数字、空格、制表符) |
-f | 忽略大小写 |
-M | 按月份排序:JAN < FEB < ... < DEC |
-r | 逆序 |
-b | 忽略前导空白 |
-t 分隔符 | 指定字段分隔符 |
+pos1 -pos2 | 指定排序关键字范围(从 pos1 到 pos2) |
示例
# 逆序排序
sort -r data.txt
# 按第三列排序,忽略前导空白
sort -k3 -b data.txtuniq 命令
删除相邻的重复行,常与 sort 配合使用。
基本用法
uniq [选项] 输入文件 输出文件注意:输入文件和输出文件不能相同;重复行必须相邻才有效,使用前请先
sort。
常用选项
| 选项 | 说明 |
|---|---|
-c | 显示每行出现次数 |
-d | 只显示重复行 |
-u | 只显示不重复的行 |
示例
# 取重复数据
sort domains.log | uniq -d > duplicates.log
# 统计每行出现次数
sort data.txt | uniq -c
# 仅保留唯一行
sort data.txt | uniq -u文件比较
# 比较两个已排序文件
comm [-123] file1 file2| 选项 | 说明 |
|---|---|
-1 | 隐藏只在 file1 中的行 |
-2 | 隐藏只在 file2 中的行 |
-3 | 隐藏在两文件中都出现的行 |
grep 查找字符串
# 递归查找当前目录下包含 "hello" 的行,显示行号
grep -rn "hello" ./
# 不区分大小写
grep -rin "hello" ./
# 显示匹配行前后各 5 行
grep -C 5 "pattern" file
# 显示匹配行之后 5 行
grep -A 5 "pattern" file
# 显示匹配行之前 5 行
grep -B 5 "pattern" file| 选项 | 说明 |
|---|---|
-r | 递归查找 |
-n | 显示行号 |
-i | 忽略大小写 |
-v | 反向匹配(排除) |
-E | 扩展正则 |
-w | 精确匹配单词 |
sed 编辑器
显示指定行
# 显示第 X 行
sed -n 'xp' filename
# 显示第 X 行到第 Y 行
sed -n 'x,yp' filename常用操作
# 替换第一个匹配
sed 's/old/new/' file
# 全局替换
sed 's/old/new/g' file
# 删除包含某模式的行
sed '/pattern/d' file
# 插入行
sed '2i\inserted line' filesplit 文件分割
将大文件切分为较小文件,默认每 1000 行一份。
常用选项
| 选项 | 说明 |
|---|---|
-l 行数 | 按行数分割 |
-b 字节 | 按字节分割,支持 k、m 单位 |
-C 字节 | 按字节分割,尽量保持行完整 |
示例
# 按 100MB 分割
split -b 100m logfile.log
# 按 100 万行分割
split -l 1000000 logfile.log
# 指定前缀名
split -l 100000 data.csv data_part_时间操作
同步时间
# 传统方式
ntpdate time.nist.gov
# Ubuntu/CentOS 7+
sudo timedatectl set-ntp true # 开启自动同步
timedatectl status # 查看状态修改时间
# 关闭自动同步
sudo timedatectl set-ntp false
# 设置完整日期时间
sudo timedatectl set-time "2026-05-29 13:45:00"
# 仅修改日期
sudo timedatectl set-time "2026-05-29"
# 仅修改时间
sudo timedatectl set-time "13:45:00"查看时间
timedatectl # 系统时间信息
date # 本地时间
date -u # UTC 时间后台执行
| 方式 | 说明 |
|---|---|
command & | 后台运行,关闭终端后停止 |
nohup command & | 后台运行,忽略 SIGHUP,输出到 nohup.out |
screen | 会话保持,可 detach/attach |
tmux | 更现代的会话保持工具 |
Ubuntu 网络相关
# Netplan 配置
cd /etc/netplan/
netplan apply
# 查看路由
route -n
# 查看 DNS
cat /etc/resolv.conf
# 查看网卡信息
ip addr show网盘挂载(SMB/CIFS)
# 临时挂载
mount -t cifs -o username=user,password=pass,dir_mode=0777,file_mode=0777 \
//192.168.1.1/share /mnt/windows
# 持久化:写入 /etc/fstab
# //192.168.1.1/share /mnt/windows cifs credentials=/etc/smbcreds,uid=1000,gid=1000 0 0安全提示:生产环境建议在
/etc/fstab中使用credentials=文件方式挂载,避免密码明文暴露。
