Linux的应用与常用命令
Linux的应用与常用命令详细介绍
Linux 的主要应用领域
Linux 凭借其稳定性、安全性和开源特性,广泛应用于以下场景:
- 服务器领域
- Web 服务器(Apache/Nginx)、数据库服务器(MySQL/PostgreSQL)、邮件服务器(Postfix)等。
- 云计算与容器技术(Docker/Kubernetes)、虚拟化(VMware/KVM)。
- 嵌入式系统
- 物联网设备、智能家电、工业控制设备(如路由器、机顶盒)。
- 开发与编程
- 作为开发者的首选平台,支持各类编程语言(C/C++、Python、Java 等)和开发工具(GCC、Make、Git)。
- 大数据与人工智能(Hadoop、Spark、TensorFlow 等框架的底层支持)。
- 桌面与移动设备
- 桌面版 Linux(如 Ubuntu、Fedora)适合办公、设计和轻度娱乐。
- 安卓系统基于 Linux 内核。
- 科学计算与高性能计算(HPC)
- 超级计算机和科研领域的数值计算、数据分析。
常用 Linux 命令分类总结
一、文件与目录操作
| 命令 | 功能描述 | 常用示例 |
|---|---|---|
ls |
列出目录内容 | ls -l(详细信息)、ls -a(显示隐藏文件) |
cd |
切换目录 | cd /home/user(进入指定目录)、cd ..(返回上级目录) |
mkdir |
创建目录 | mkdir project(创建单个目录)、mkdir -p parent/child(递归创建多层目录) |
rmdir |
删除空目录 | rmdir dir(仅删除空目录) |
cp |
复制文件 / 目录 | cp file.txt backup.txt(复制文件)、cp -r dir1 dir2(复制目录) |
mv |
移动文件 / 目录(或重命名) | mv old.txt new.txt(重命名)、mv file /target/(移动文件) |
rm |
删除文件 / 目录 | rm file.txt(删除文件)、rm -r dir(删除目录,需谨慎!) |
cat |
查看文件内容(适合小文件) | cat config.txt |
less/more |
分页查看文件(适合大文件) | less log.txt(支持搜索,按 q 退出) |
head/tail |
查看文件头部 / 尾部内容 | head -n 10 file(前 10 行)、tail -f log(实时监控日志) |
nano/vim |
文本编辑 | nano file.txt(简单编辑器)、vim file.txt(高级文本编辑器,需掌握基本操作) |
二、系统信息与监控
| 命令 | 功能描述 | |
|---|---|---|
uname |
查看系统信息(内核版本、架构等) | uname -a(完整信息) |
top/htop |
实时进程监控(htop 交互性更强) | 按 M 按内存排序,按 P 按 CPU 排序 |
df |
查看磁盘空间使用情况 | df -h(以人类可读格式显示) |
free |
查看内存使用情况 | free -h |
du |
查看目录 / 文件大小 | du -sh dir(目录总大小) |
date |
显示或设置系统时间 | date "+%Y-%m-%d %H:%M:%S"(指定格式) |
三、网络与通信
| 命令 | 功能描述 | |
|---|---|---|
ping |
测试网络连通性 | ping www.baidu.com(按 Ctrl+C 终止) |
ifconfig/ip |
查看 / 配置网络接口(ip 更现代) |
ip addr(查看 IP 地址) |
netstat/ss |
查看网络连接、端口状态(ss 更高效) |
netstat -tunlp(查看监听端口) |
curl/wget |
下载网络文件(curl 支持更多协议) | curl -O https://example.com/file、wget https://example.com/file |
ssh |
远程登录到其他主机 | ssh user@remote_host(需提前配置 SSH 密钥或密码) |
scp |
安全复制文件到远程主机 | scp local.txt user@remote:/path/ |
四、文本处理与筛选
| 命令 | 功能描述 | |
|---|---|---|
grep |
在文件中搜索指定字符串 | grep "error" log.txt(查找含 "error" 的行) |
awk |
文本分析与格式化处理 | awk '{print $1}' data.txt(打印第一列) |
sed |
流文本编辑(替换、删除等) | sed 's/old/new/g' file.txt(替换所有 "old" 为 "new") |
sort |
对文件内容排序 | sort data.txt(默认升序) |
uniq |
去除重复行 | uniq sorted.txt(需先排序) |
五、软件包管理(不同发行版差异)
| 发行版 | 包管理工具 | 常用命令示例 |
|---|---|---|
| Debian/Ubuntu | apt |
apt install package(安装)、apt update(更新源) |
| RedHat/CentOS | yum/dnf |
yum install package、dnf upgrade(升级) |
| Arch Linux | pacman |
pacman -S package(安装)、pacman -Rs(删除) |
| SUSE | zypper |
zypper install package |
六、权限管理
| 命令 | 功能描述 | |
|---|---|---|
chmod |
修改文件 / 目录权限 | chmod 755 file(所有者可读 / 写 / 执行,其他人可读 / 执行) |
chown |
修改文件 / 目录所有者 / 所属组 | chown user:group file(设置所有者和组) |
chgrp |
修改文件 / 目录所属组 | chgrp group file |
七、进程管理
| 命令 | 功能描述 | |
|---|---|---|
ps |
查看进程状态 | ps aux(显示所有进程)、ps -ef(BSD 格式) |
kill |
终止进程 | kill -9 1234(强制终止 PID 为 1234 的进程) |
bg/fg |
后台 / 前台运行进程 | bg(将暂停的进程放入后台)、fg(将后台进程调回前台) |
jobs |
查看后台进程列表 | jobs |
八、压缩与归档
| 命令 | 功能描述 | |
|---|---|---|
tar |
打包与压缩文件 | tar -czvf archive.tar.gz dir/(压缩为 gzip 格式)、tar -xzvf archive.tar.gz(解压) |
gzip/gunzip |
压缩 / 解压单个文件(不打包) | gzip file.txt(生成 file.txt.gz) |
unzip |
解压 zip 文件 | unzip archive.zip |
学习建议
- 实践优先:通过虚拟机(如 VMware/VirtualBox)或云服务器(如阿里云 / 腾讯云)实操命令。
- 查阅手册:使用
man 命令(如man ls)查看官方文档,或--help获取简明帮助(如ls --help)。 - 脚本编写:学习 Shell 脚本(如
bash),结合for、while循环和条件判断提升效率。
Linux 的魅力在于其灵活性,掌握常用命令后,可根据具体场景组合使用(如管道 | 和重定向 > / >>),逐步进阶到系统管理和开发领域。