让豆包专业版整理了100条最高频最常用的Linux命令并告诉我具体使用方法和常用使用方法
# 100条最高频Linux命令及使用方法
以下命令按**使用场景分类**排序,均为日常开发、运维最高频的核心命令,每个命令包含功能、语法、常用选项和实用示例。
---
## 一、文件与目录操作(20条)
### 1. ls
**功能**:列出目录下的文件和子目录
**语法**:`ls [选项] [目录路径]`
**常用选项**:
- `-l`:长格式显示,包含权限、所有者、大小、时间等
- `-a`:显示所有文件(包括隐藏文件)
- `-h`:人性化显示文件大小(K/M/G)
- `-t`:按修改时间排序
- `-R`:递归显示所有子目录
**示例**:
```bash
ls -lah /home# 长格式显示/home下所有文件,大小自动换算
ls -ltr # 按修改时间倒序显示当前目录文件
```
### 2. cd
**功能**:切换当前工作目录
**语法**:`cd [目录路径]`
**常用用法**:
```bash
cd /etc # 切换到/etc目录
cd ~ # 切换到当前用户家目录(等价cd)
cd .. # 切换到上一级目录
cd - # 切换到上一次所在的目录
cd / # 切换到根目录
```
### 3. pwd
**功能**:打印当前工作目录的绝对路径
**语法**:`pwd`
**示例**:执行后输出如 `/home/user/documents`
### 4. mkdir
**功能**:创建新目录
**语法**:`mkdir [选项] 目录名`
**常用选项**:
- `-p`:递归创建多级目录
- `-m`:创建时指定目录权限
**示例**:
```bash
mkdir test # 创建单个test目录
mkdir -p a/b/c # 递归创建a/b/c多级目录
mkdir -m 755 dir # 创建权限为755的dir目录
```
### 5. rmdir
**功能**:删除空目录
**语法**:`rmdir [选项] 目录名`
**常用选项**:`-p` 递归删除空的多级目录
**示例**:`rmdir -p a/b/c` 递归删除空的a/b/c目录链
### 6. rm
**功能**:删除文件或目录(危险命令,慎用)
**语法**:`rm [选项] 文件/目录`
**常用选项**:
- `-r`:递归删除目录及其所有内容
- `-f`:强制删除,不提示确认
- `-i`:删除前逐一提示确认
**示例**:
```bash
rm file.txt # 删除单个文件
rm -rf test_dir # 强制递归删除目录(无提示,高危)
rm -i *.log # 删除所有.log文件前逐一确认
```
### 7. cp
**功能**:复制文件或目录
**语法**:`cp [选项] 源文件/目录 目标路径`
**常用选项**:
- `-r`:递归复制目录
- `-p`:保留文件的权限、时间戳等属性
- `-f`:强制覆盖目标文件
- `-i`:覆盖前提示确认
**示例**:
```bash
cp file1.txt file2.txt # 复制文件并重命名
cp -r dir1 dir2 # 复制整个目录
cp -p file.txt /tmp/ # 复制文件到/tmp并保留原属性
```
### 8. mv
**功能**:移动文件/目录,或重命名
**语法**:`mv [选项] 源 目标`
**常用选项**:
- `-f`:强制覆盖,不提示
- `-i`:覆盖前提示
- `-u`:仅当源文件比目标文件新时才覆盖
**示例**:
```bash
mv oldname newname # 重命名文件/目录
mv file.txt /tmp/ # 移动文件到/tmp目录
mv -u *.txt data/ # 只移动更新的txt文件到data目录
```
### 9. touch
**功能**:创建空文件,或修改文件的时间戳
**语法**:`touch [选项] 文件名`
**常用选项**:
- `-a`:只修改访问时间
- `-m`:只修改修改时间
- `-t`:指定时间戳(格式YYYYMMDDHHMM)
**示例**:
```bash
touch newfile.txt # 创建一个空文件
touch -t 202501011200 file.txt# 将文件时间改为2025-01-01 12:00
```
### 10. ln
**功能**:创建硬链接或软链接(符号链接)
**语法**:`ln [选项] 源文件 链接名`
**常用选项**:`-s` 创建软链接(不加则创建硬链接)
**示例**:
```bash
ln -s /etc/passwd pwd_link # 创建指向passwd的软链接
ln file.txt hard_link # 创建file.txt的硬链接
```
### 11. find
**功能**:在指定路径下查找文件/目录,功能极强
**语法**:`find [搜索路径] [匹配条件] [动作]`
**常用条件**:
- `-name`:按文件名匹配(支持通配符)
- `-type`:按类型匹配(f=文件,d=目录)
- `-size`:按大小匹配(+10M=大于10M,-100K=小于100K)
- `-mtime`:按修改时间(-7=7天内,+30=30天前)
- `-user`:按所有者匹配
**示例**:
```bash
find /home -name "*.txt" # 在/home下查找所有txt文件
find . -type d -name "log" # 当前目录下找名为log的目录
find /tmp -size +10M # 查找/tmp下大于10M的文件
find . -mtime -7 -name "*.log" # 查找7天内修改的log文件
```
### 12. locate
**功能**:基于系统数据库快速查找文件(比find快)
**语法**:`locate [选项] 文件名`
**常用选项**:`-i` 忽略大小写
**示例**:`locate passwd` 快速定位所有含passwd的文件路径
> 注意:首次使用前需执行`updatedb`更新数据库,系统一般会自动定时更新
### 13. file
**功能**:识别文件的类型和编码格式
**语法**:`file [选项] 文件名`
**示例**:`file test.txt` 输出文件的编码、类型等信息
### 14. stat
**功能**:查看文件的详细属性(大小、权限、三个时间戳等)
**语法**:`stat [选项] 文件名`
**示例**:`stat file.txt` 显示文件的访问/修改/状态改变时间、inode等信息
### 15. basename
**功能**:从路径中提取纯文件名
**语法**:`basename 路径 [后缀]`
**示例**:
```bash
basename /etc/passwd # 输出 passwd
basename /etc/passwd .wd # 输出 pas(去掉指定后缀)
```
### 16. dirname
**功能**:从路径中提取目录部分
**语法**:`dirname 路径`
**示例**:`dirname /etc/passwd` 输出 `/etc`
### 17. tree
**功能**:以树形结构显示目录层级
**语法**:`tree [选项] [目录]`
**常用选项**:
- `-L n`:只显示n层目录
- `-d`:只显示目录,不显示文件
**示例**:`tree -L 2 /home` 显示/home下两层的目录结构
> 注意:部分系统需先安装`tree`包
### 18. rename
**功能**:批量重命名文件
**语法**:`rename 原字符串 新字符串 匹配文件`
**示例**:`rename .txt .bak *.txt` 将所有txt文件后缀改为bak
### 19. readlink
**功能**:查看软链接指向的真实路径
**语法**:`readlink [选项] 链接文件`
**常用选项**:`-f` 显示完整的绝对路径
**示例**:`readlink -f /usr/bin/python` 输出python软链接的真实文件路径
### 20. in
不对,第20个是?哦,上面19个,补一个:**20. realpath**
### 20. realpath
**功能**:获取文件/目录的绝对路径(解析所有软链接)
**语法**:`realpath 路径`
**示例**:`realpath ./file.txt` 输出文件的完整绝对路径
---
## 二、文本查看与处理(18条)
### 21. cat
**功能**:查看文件内容、拼接多个文件
**语法**:`cat [选项] 文件`
**常用选项**:
- `-n`:显示所有行的行号
- `-A`:显示所有控制字符(换行、制表符等)
**示例**:
```bash
cat file.txt # 查看文件全部内容
cat -n file.txt # 带行号查看
cat f1.txt f2.txt > out.txt# 合并两个文件到out.txt
```
### 22. more
**功能**:分页查看大文件(只能向下翻)
**语法**:`more 文件名`
**操作**:空格=下一页,回车=下一行,q=退出,/关键词=搜索
**示例**:`more /var/log/syslog` 分页查看系统日志
### 23. less
**功能**:增强版分页查看(支持上下翻页、搜索,更常用)
**语法**:`less [选项] 文件名`
**常用操作**:PageUp/PageDown翻页,`/`向下搜索,`?`向上搜索,n=下一个匹配,q=退出
**常用选项**:`-N` 显示行号
**示例**:`less -N /var/log/nginx/access.log` 带行号查看访问日志
### 24. head
**功能**:查看文件的开头部分
**语法**:`head [选项] 文件`
**常用选项**:
- `-n n`:显示前n行
- `-c n`:显示前n个字节
**示例**:
```bash
head -20 file.txt # 显示文件前20行
head -c 100 file.txt # 显示文件前100个字节
```
### 25. tail
**功能**:查看文件的结尾部分,支持实时追踪
**语法**:`tail [选项] 文件`
**常用选项**:
- `-n n`:显示后n行
- `-f`:实时追踪文件新增内容(日志常用)
- `-F`:追踪文件,即使文件被重建也继续追踪
**示例**:
```bash
tail -10 file.txt # 显示最后10行
tail -f /var/log/nginx/access.log# 实时查看日志新增内容
```
### 26. grep
**功能**:文本搜索工具,支持正则表达式,极高频
**语法**:`grep [选项] 匹配模式 文件`
**常用选项**:
- `-i`:忽略大小写
- `-n`:显示匹配行的行号
- `-v`:反向匹配(输出不包含模式的行)
- `-r`:递归搜索目录下所有文件
- `-E`:支持扩展正则表达式(等价egrep)
- `-c`:统计匹配的行数
**示例**:
```bash
grep "root" /etc/passwd # 查找包含root的行
grep -rn "error" /var/log # 递归查找日志中含error的行
grep -v "^#" nginx.conf # 过滤掉配置文件中的注释行
```
### 27. sed
**功能**:流编辑器,用于文本替换、删除、插入、提取
**语法**:`sed [选项] '编辑脚本' 文件`
**常用操作**:
- `s/old/new/g`:全局替换old为new
- `nd`:删除第n行
- `n,mp`:打印n到m行
**常用选项**:`-i` 直接修改原文件
**示例**:
```bash
sed 's/old/new/g' file.txt # 将文件中old替换为new
sed -i 's/^#//' config.conf # 删除每行开头的#(直接修改文件)
sed '5d' file.txt # 删除第5行
sed -n '10,20p' file.txt # 打印第10到20行
```
### 28. awk
**功能**:强大的文本处理语言,擅长按列处理数据
**语法**:`awk [选项] '模式{动作}' 文件`
**内置变量**:`$1`第1列,`$0`整行,`NF`列数,`NR`行号,`-F`指定分隔符
**示例**:
```bash
awk '{print $1}' file.txt # 打印每行第一列
awk -F: '{print $1,$3}' /etc/passwd# 以:为分隔符,打印第1和第3列
awk '$3>1000' /etc/passwd # 打印第3列大于1000的行
```
### 29. cut
**功能**:按列或字符切割文本
**语法**:`cut [选项] 文件`
**常用选项**:
- `-d`:指定分隔符
- `-f`:指定要提取的字段
- `-c`:按字符位置切割
**示例**:
```bash
cut -d: -f1 /etc/passwd # 以:分隔,提取第1列
cut -c1-5 file.txt # 提取每行前5个字符
```
### 30. sort
**功能**:对文本内容进行排序
**语法**:`sort [选项] 文件`
**常用选项**:
- `-n`:按数值大小排序
- `-r`:反向排序
- `-t`:指定分隔符
- `-k n`:按第n列排序
- `-u`:排序后去重
**示例**:
```bash
sort file.txt # 默认按字典序排序
sort -n -k2 score.txt # 按第2列数值排序
sort -u file.txt # 排序并去除重复行
```
### 31. uniq
**功能**:去除连续的重复行(需先排序)
**语法**:`uniq [选项] 文件`
**常用选项**:
- `-c`:统计每行出现的次数
- `-d`:只显示重复的行
- `-u`:只显示不重复的行
**示例**:
```bash
sort file | uniq -c # 统计每行出现的次数
sort file | uniq -d # 只显示重复出现的行
```
### 32. wc
**功能**:统计文件的行数、单词数、字节数
**语法**:`wc [选项] 文件`
**常用选项**:
- `-l`:统计行数
- `-w`:统计单词数
- `-c`:统计字节数
**示例**:
```bash
wc -l file.txt # 统计文件行数
wc -w file.txt # 统计单词数
```
### 33. tr
**功能**:字符转换、替换、删除
**语法**:`tr [选项] 字符集1 [字符集2]`
**常用选项**:
- `-d`:删除指定字符
- `-s`:压缩重复的字符
**示例**:
```bash
tr 'a-z' 'A-Z' < file.txt # 小写字母转大写
tr -d '\n' < file.txt # 删除所有换行符
tr -s ' ' # 将多个连续空格压缩为一个
```
### 34. diff
**功能**:对比两个文件的差异
**语法**:`diff [选项] 文件1 文件2`
**常用选项**:`-u` 统一格式输出(更易读)
**示例**:`diff -u old.txt new.txt` 统一格式显示两个文件差异
### 35. split
**功能**:将大文件分割为多个小文件
**语法**:`split [选项] 输入文件 输出前缀`
**常用选项**:
- `-l n`:按行数分割
- `-b size`:按大小分割(如10M)
**示例**:
```bash
split -l 100 big.txt part_ # 每100行分割一个文件,前缀part_
split -b 10M big.iso part_ # 每10MB分割一个文件
```
### 36. tac
**功能**:反向查看文件内容(从最后一行到第一行)
**语法**:`tac 文件名`
**示例**:`tac file.txt` 倒序显示文件内容
### 37. nl
**功能**:查看文件并自动添加行号(比cat -n更灵活)
**语法**:`nl [选项] 文件`
**示例**:`nl file.txt` 显示文件并标注行号
### 38. paste
**功能**:按列合并多个文件
**语法**:`paste [选项] 文件1 文件2`
**常用选项**:`-d` 指定列之间的分隔符
**示例**:`paste a.txt b.txt` 将两个文件按列并排,默认用tab分隔
---
## 三、系统信息与监控(12条)
### 39. uname
**功能**:查看系统内核信息
**语法**:`uname [选项]`
**常用选项**:
- `-a`:显示所有系统信息
- `-r`:显示内核版本
- `-m`:显示系统架构
**示例**:`uname -r` 输出内核版本号
### 40. hostname
**功能**:查看或临时设置主机名
**语法**:`hostname [新主机名]`
**示例**:
```bash
hostname # 查看当前主机名
hostname server01 # 临时修改主机名(重启失效)
```
### 41. uptime
**功能**:查看系统运行时间、用户数、平均负载
**语法**:`uptime`
**示例**:输出格式:当前时间 + 运行时长 + 在线用户数 + 1/5/15分钟平均负载
### 42. top
**功能**:实时监控系统进程、CPU、内存等资源
**语法**:`top [选项]`
**常用操作**:
- `P`:按CPU使用率排序
- `M`:按内存使用率排序
- `k`:杀死指定进程
- `q`:退出
**常用选项**:`-d n` 设置刷新间隔(秒)
**示例**:`top -d 2` 每2秒刷新一次
### 43. htop
**功能**:增强版top,界面更直观、支持鼠标操作
**语法**:`htop`
> 注意:需先安装`htop`包,是运维首选进程监控工具
### 44. free
**功能**:查看系统内存和交换分区使用情况
**语法**:`free [选项]`
**常用选项**:
- `-h`:人性化显示大小
- `-m`:以MB为单位
- `-g`:以GB为单位
**示例**:`free -h` 清晰显示内存总量、已用、可用、缓存等
### 45. df
**功能**:查看磁盘分区空间使用情况
**语法**:`df [选项]`
**常用选项**:
- `-h`:人性化显示大小
- `-T`:显示文件系统类型
- `-i`:显示inode使用情况
**示例**:`df -hT` 显示所有分区的容量、使用率、文件系统类型
### 46. du
**功能**:查看目录或文件占用的磁盘大小
**语法**:`du [选项] [路径]`
**常用选项**:
- `-h`:人性化显示
- `-s`:只显示总大小
- `--max-depth=n`:显示n层深度的目录大小
**示例**:
```bash
du -sh /home # 查看/home目录总大小
du -h --max-depth=1 /var# 查看/var下一级目录各自大小
```
### 47. date
**功能**:查看或设置系统日期时间
**语法**:`date [选项] [格式]`
**常用格式**:`+%Y-%m-%d %H:%M:%S` 标准时间格式
**示例**:
```bash
date "+%Y-%m-%d %H:%M:%S" # 格式化输出当前时间
date -s "2025-01-01 12:00:00"# root用户设置系统时间
```
### 48. dmesg
**功能**:查看内核环形缓冲区日志(开机硬件、驱动信息)
**语法**:`dmesg [选项]`
**常用选项**:`-T` 显示人类可读的时间
**示例**:`dmesg | grep eth0` 查看网卡相关的内核日志
### 49. lscpu
**功能**:查看CPU详细硬件信息
**语法**:`lscpu`
**示例**:输出CPU核心数、线程数、架构、缓存大小等
### 50. lsblk
**功能**:树形查看所有块设备(磁盘、分区)信息
**语法**:`lsblk`
**示例**:清晰显示磁盘、分区、挂载点的层级关系
---
## 四、进程管理(10条)
### 51. ps
**功能**:查看系统进程快照(当前时刻的进程状态)
**语法**:`ps [选项]`
**常用组合**:
- `aux`:BSD风格,显示所有进程的详细信息
- `-ef`:System V风格,显示全格式进程信息
**示例**:
```bash
ps aux # 查看所有进程
ps aux | grep nginx # 查找nginx相关进程
ps -ef # 另一种格式查看所有进程
```
### 52. kill
**功能**:向进程发送信号(默认终止进程)
**语法**:`kill [选项] PID`
**常用信号**:
- `15 (SIGTERM)`:正常终止(默认)
- `9 (SIGKILL)`:强制杀死进程(无法被忽略)
- `2 (SIGINT)`:中断(等价Ctrl+C)
**示例**:
```bash
kill 1234 # 正常终止PID为1234的进程
kill -9 1234 # 强制杀死进程
```
### 53. pkill
**功能**:按进程名批量终止进程
**语法**:`pkill [选项] 进程名`
**常用选项**:`-9` 强制杀死,`-u` 指定用户
**示例**:
```bash
pkill nginx # 终止所有nginx进程
pkill -9 -u testuser # 强制杀死testuser的所有进程
```
### 54. killall
**功能**:杀死所有同名进程
**语法**:`killall [选项] 进程名`
**示例**:`killall httpd` 终止所有httpd进程
### 55. nice
**功能**:启动进程时指定其优先级
**语法**:`nice -n 优先级 命令`
> 优先级范围:-20(最高)~ 19(最低),普通用户只能调0~19
**示例**:`nice -n 10 ./script.sh` 以优先级10运行脚本
### 56. renice
**功能**:调整正在运行的进程的优先级
**语法**:`renice 优先级 PID`
**示例**:`renice -5 1234` 将PID1234的优先级改为-5
### 57. nohup
**功能**:后台运行进程,退出终端后进程不挂断
**语法**:`nohup 命令 [输出重定向] &`
**示例**:
```bash
nohup ./script.sh > run.log 2>&1 &
# 后台运行脚本,标准输出和错误都写入run.log,退出终端不停止
```
### 58. jobs
**功能**:查看当前终端的后台任务列表
**语法**:`jobs [选项]`
**示例**:`jobs` 显示所有后台任务的编号、状态、命令
### 59. fg
**功能**:将后台任务调到前台运行
**语法**:`fg %任务编号`
**示例**:`fg %1` 将1号后台任务调到前台
### 60. bg
**功能**:将暂停的后台任务放到后台继续运行
**语法**:`bg %任务编号`
**示例**:`bg %2` 让2号暂停任务在后台继续运行
---
## 五、权限与用户管理(10条)
### 61. chmod
**功能**:修改文件/目录的权限
**语法**:`chmod [选项] 权限模式 文件`
**权限表示**:
- 数字法:r=4, w=2, x=1,如755=rwxr-xr-x
- 符号法:u=所有者,g=组,o=其他,+/-权限,如u+x
**常用选项**:`-R` 递归修改目录下所有文件
**示例**:
```bash
chmod 755 script.sh # 设置权限为rwxr-xr-x
chmod u+x script.sh # 给所有者添加执行权限
chmod -R 644 /var/www # 递归修改目录下所有文件为644
```
### 62. chown
**功能**:修改文件/目录的所有者和所属组
**语法**:`chown [选项] 所有者[:组] 文件`
**常用选项**:`-R` 递归修改
**示例**:
```bash
chown user:group file.txt # 修改所有者和所属组
chown -R www-data /var/www# 递归修改目录所有者
```
### 63. chgrp
**功能**:修改文件/目录的所属组
**语法**:`chgrp [选项] 组名 文件`
**常用选项**:`-R` 递归修改
**示例**:`chgrp dev team.txt` 将文件所属组改为dev
### 64. useradd
**功能**:创建新用户
**语法**:`useradd [选项] 用户名`
**常用选项**:
- `-m`:自动创建用户家目录
- `-s`:指定登录shell
- `-g`:指定主用户组
- `-G`:指定附加用户组
**示例**:`useradd -m -s /bin/bash zhangsan` 创建zhangsan用户并创建家目录
### 65. userdel
**功能**:删除用户
**语法**:`userdel [选项] 用户名`
**常用选项**:`-r` 删除用户的家目录和邮件
**示例**:`userdel -r zhangsan` 删除用户并删除其家目录
### 66. passwd
**功能**:修改用户密码
**语法**:`passwd [用户名]`
**示例**:
```bash
passwd # 修改当前用户密码
passwd zhangsan # root修改指定用户的密码
```
### 67. su
**功能**:切换到其他用户
**语法**:`su [选项] 用户名`
**常用选项**:`-` 切换时加载目标用户的环境变量和家目录
**示例**:
```bash
su - root # 切换到root并加载完整环境
su testuser # 切换到testuser但不加载环境
```
### 68. sudo
**功能**:以超级用户(root)权限执行命令
**语法**:`sudo [选项] 命令`
**常用选项**:`-u` 指定以哪个用户身份执行
**示例**:
```bash
sudo apt update # 以root权限执行更新
sudo -u nginx command# 以nginx用户身份执行命令
```
### 69. groupadd
**功能**:创建新的用户组
**语法**:`groupadd 组名`
**示例**:`groupadd devteam` 创建devteam用户组
### 70. id
**功能**:查看用户的UID、GID和所属的所有组
**语法**:`id [用户名]`
**示例**:`id root` 查看root用户的ID信息
---
## 六、网络工具(10条)
### 71. ping
**功能**:测试网络连通性和延迟
**语法**:`ping [选项] 目标地址`
**常用选项**:
- `-c n`:发送n个数据包后停止
- `-i n`:发送间隔n秒
- `-s n`:设置数据包大小
**示例**:`ping -c 4 baidu.com` 发送4个包测试百度连通性
### 72. ip
**功能**:新一代网络配置工具(替代ifconfig)
**语法**:`ip [选项] 对象 命令`
**常用子命令**:
- `ip addr`:查看/配置IP地址
- `ip link`:查看/配置网卡状态
- `ip route`:查看/配置路由表
**示例**:
```bash
ip addr show # 查看所有网卡的IP地址
ip link set eth0 up # 启用eth0网卡
ip route show # 查看系统路由表
```
### 73. ifconfig
**功能**:传统网络配置工具(部分系统需安装net-tools)
**语法**:`ifconfig [网卡] [配置]`
**示例**:
```bash
ifconfig # 查看所有启用的网卡
ifconfig eth0 192.168.1.100 netmask 255.255.255.0# 临时设置IP
```
### 74. ss
**功能**:查看网络连接状态(替代netstat,性能更高)
**语法**:`ss [选项]`
**常用选项**:
- `-t`:显示TCP连接
- `-u`:显示UDP连接
- `-l`:显示监听端口
- `-n`:数字形式显示(不解析域名)
- `-p`:显示进程名和PID
**示例**:`ss -tlnp` 查看所有TCP监听端口及对应进程
### 75. netstat
**功能**:传统网络连接查看工具
**语法**:`netstat [选项]`
**常用组合**:`-tulnp` 查看所有监听的TCP/UDP端口和进程
**示例**:`netstat -tulnp`
### 76. curl
**功能**:命令行网络请求工具,支持HTTP/FTP等
**语法**:`curl [选项] URL`
**常用选项**:
- `-o`:将内容保存到指定文件
- `-O`:用原文件名保存
- `-X`:指定请求方法(POST/PUT等)
- `-H`:设置请求头
- `-d`:发送POST数据
**示例**:
```bash
curl https://baidu.com # 获取网页内容
curl -O https://example.com/file.zip# 下载文件
curl -X POST -d "name=test" url# 发送POST请求
```
### 77. wget
**功能**:命令行文件下载工具
**语法**:`wget [选项] URL`
**常用选项**:
- `-c`:断点续传
- `-O`:指定保存的文件名
- `-b`:后台下载
**示例**:
```bash
wget https://example.com/file.iso # 下载文件
wget -c https://example.com/file.iso # 断点续传下载
```
### 78. ssh
**功能**:SSH远程安全登录
**语法**:`ssh [选项] 用户@主机地址`
**常用选项**:
- `-p`:指定SSH端口
- `-i`:指定私钥文件
**示例**:
```bash
ssh [email protected] # 远程登录主机
ssh -p 2222 [email protected] # 指定2222端口登录
```
### 79. scp
**功能**:基于SSH的远程文件复制
**语法**:`scp [选项] 源 目标`
**常用选项**:
- `-P`:指定端口
- `-r`:递归复制目录
**示例**:
```bash
scp file.txt user@host:/tmp/ # 本地文件传到远程
scp -r user@host:/data ./ # 远程目录复制到本地
```
### 80. nslookup
**功能**:DNS域名查询工具
**语法**:`nslookup 域名`
**示例**:`nslookup baidu.com` 查询百度域名对应的IP地址
---
## 七、压缩与打包(8条)
### 81. tar
**功能**:打包/解包工具,支持多种压缩格式
**语法**:`tar [选项] 包名 [文件/目录]`
**常用选项组合**:
- `-czvf`:打包 + gzip压缩
- `-xzvf`:解压gzip包
- `-cjvf`:打包 + bzip2压缩
- `-xJvf`:解压xz包
- `-C`:指定解压到的目录
> 注:`-f`必须放在选项最后,指定包文件名
**示例**:
```bash
tar -czvf pack.tar.gz dir/ # 将dir目录打包并gzip压缩
tar -xzvf pack.tar.gz # 解压到当前目录
tar -xzvf pack.tar.gz -C /tmp # 解压到/tmp目录
```
### 82. zip
**功能**:创建zip格式压缩包
**语法**:`zip [选项] 包名 文件/目录`
**常用选项**:`-r` 递归压缩目录
**示例**:
```bash
zip pack.zip f1.txt f2.txt # 压缩多个文件
zip -r pack.zip dir/ # 压缩整个目录
```
### 83. unzip
**功能**:解压zip格式压缩包
**语法**:`unzip [选项] 包名`
**常用选项**:
- `-d`:指定解压目录
- `-l`:只列出包内文件,不解压
**示例**:
```bash
unzip pack.zip # 解压到当前目录
unzip pack.zip -d /tmp # 解压到/tmp
unzip -l pack.zip # 查看包内文件列表
```
### 84. gzip
**功能**:gzip格式压缩/解压
**语法**:`gzip [选项] 文件`
**常用选项**:
- `-d`:解压
- `-k`:压缩后保留原文件
**示例**:
```bash
gzip file.txt # 压缩为file.txt.gz
gzip -d file.txt.gz # 解压
```
### 85. gunzip
**功能**:解压gzip文件(等价于`gzip -d`)
**语法**:`gunzip 文件.gz`
**示例**:`gunzip file.txt.gz`
### 86. bzip2
**功能**:bzip2格式压缩/解压(压缩率比gzip高)
**语法**:`bzip2 [选项] 文件`
**常用选项**:`-d` 解压
**示例**:
```bash
bzip2 file.txt # 压缩为file.txt.bz2
bzip2 -d file.txt.bz2 # 解压
```
### 87. xz
**功能**:xz格式压缩/解压(高压缩率)
**语法**:`xz [选项] 文件`
**常用选项**:`-d` 解压
**示例**:
```bash
xz file.txt # 压缩为file.txt.xz
xz -d file.txt.xz # 解压
```
### 88. zcat
**功能**:直接查看gzip压缩的文本文件,无需解压
**语法**:`zcat 文件.gz`
**示例**:`zcat access.log.gz` 直接查看压缩的日志文件
---
## 八、软件包管理(5条)
### 89. apt
**功能**:Debian/Ubuntu系列发行版的包管理工具
**常用子命令**:
- `apt update`:更新软件源缓存
- `apt upgrade`:升级所有可更新的软件
- `apt install 包名`:安装软件
- `apt remove 包名`:卸载软件
- `apt search 关键词`:搜索软件包
- `apt show 包名`:查看软件详情
**示例**:
```bash
sudo apt update && sudo apt upgrade# 更新源并升级所有软件
sudo apt install nginx # 安装nginx
```
### 90. yum
**功能**:CentOS 7/RHEL 7及以前的包管理工具
**常用子命令**:
- `yum install 包名`:安装
- `yum remove 包名`:卸载
- `yum update`:升级
- `yum search 关键词`:搜索
**示例**:`sudo yum install httpd` 安装Apache
### 91. dnf
**功能**:CentOS 8+/RHEL 8+新一代包管理工具(替代yum)
**语法与yum完全兼容**,性能更优
**示例**:`sudo dnf install nginx`
### 92. rpm
**功能**:RedHat系列底层RPM包管理工具
**常用选项**:
- `-ivh`:安装rpm包并显示进度
- `-e`:卸载已安装的包
- `-qa`:列出所有已安装的包
- `-qi`:查看包的详细信息
**示例**:
```bash
rpm -ivh package.rpm # 安装rpm包
rpm -qa | grep mysql # 查询是否安装mysql相关包
rpm -e mysql-community # 卸载指定包
```
### 93. dpkg
**功能**:Debian系列底层DEB包管理工具
**常用选项**:
- `-i`:安装deb包
- `-l`:列出已安装的包
- `-r`:卸载包
**示例**:
```bash
dpkg -i package.deb # 安装deb包
dpkg -l | grep nginx # 查询已安装的nginx包
dpkg -r nginx # 卸载nginx
```
---
## 九、其他基础实用命令(7条)
### 94. echo
**功能**:输出文本或变量内容
**语法**:`echo [选项] 内容`
**常用选项**:`-e` 支持转义字符
**示例**:
```bash
echo "Hello World" # 输出字符串
echo $PATH # 输出环境变量PATH的值
echo -e "line1\nline2" # 输出带换行的内容
```
### 95. history
**功能**:查看执行过的命令历史
**语法**:`history [选项]`
**常用用法**:
```bash
history # 显示所有历史命令
history -c # 清空历史命令
!100 # 执行第100条历史命令
```
### 96. man
**功能**:查看命令的官方帮助手册
**语法**:`man 命令名`
**操作**:空格翻页,q退出,/搜索
**示例**:`man ls` 查看ls命令的完整帮助文档
### 97. which
**功能**:查找命令的可执行文件路径
**语法**:`which 命令名`
**示例**:`which python` 输出python命令的绝对路径
### 98. clear
**功能**:清屏(清空终端当前显示)
**语法**:`clear`
> 快捷键等价于 `Ctrl + L`
### 99. alias
**功能**:设置命令别名,简化长命令
**语法**:`alias 别名='命令'`
**示例**:
```bash
alias ll='ls -l' # 设置ll为ls -l的别名
alias # 查看所有已设置的别名
```
> 注意:临时设置,关闭终端失效;永久生效需写入~/.bashrc
### 100. time
**功能**:统计命令执行的时间
**语法**:`time 命令`
**示例**:`time sleep 2` 统计sleep命令的执行耗时
---
需要我把这100条命令整理成**速查清单版**(只保留命令+核心用法,方便打印)吗?
页:
[1]