Linux:超详细入门笔记(基础 + 安装 + 命令 + 软件配置全攻略)
这篇文章是一篇详细的Linux入门指南,适合初学者系统学习。主要内容包括:1)Linux基本概念,解释其作为GNU/Linux操作系统的本质和核心特性;2)Linux相比Windows的优势,如稳定性、安全性和资源节省;3)手把手教程教你使用VirtualBox安装CentOS7.9虚拟机;4)常见问题解决方案;5)必备工具和常用命令介绍;6)软件配置(Vim、JDK、Tomcat)7)权限管理;
作为一名刚入门 Linux 的学习者,最近我系统梳理了自己的学习笔记,从基础概念到实际操作,涵盖了 Linux 入门的核心知识点。这篇博客旨在把这些内容清晰、全面地分享出来,无论是想了解 Linux 是什么,还是想亲手搭建 Linux 环境、配置常用软件,都能在这里找到详细指南,特别适合新手小伙伴一步步跟着实践。
目录
三、手把手教你装 Linux:VirtualBox+CentOS 7.9
1. 问题 1:虚拟机启动报错 “VT-x/AMD-V 未启用”
2. 问题 2:虚拟机连不上网(无法 ping 通主机 / 外网)
4. 问题 4:VirtualBox 报错 “80004005”
七、Linux 权限管理:看懂 “rwx”,学会 “chmod”
(1)符号法:chmod u/g/o +/- r/w/x 文件名
八、Shell 脚本:Linux 下的 “批处理”,比你想的更强大
一、认识 Linux:它到底是什么?
在学 Linux 之前,我们得先搞清楚 ——Linux 不是一个单一的系统,而是一类操作系统的统称。准确来说,我们常说的 Linux 其实是 “GNU/Linux”:单独的 Linux 内核(由林纳斯・托瓦兹在 1991 年 10 月 5 日首次发布)无法直接使用,必须搭配 GNU 开源套件才能正常工作,因此得名。
1. 操作系统的本质
简单理解,操作系统是 “人和计算机硬件沟通的桥梁”。我们日常操作电脑、手机,本质上是通过操作系统向硬件(CPU、内存、硬盘等)发送指令,再由硬件执行后返回结果。
2. 常见操作系统分类
我们可以根据设备类型,把常见的操作系统分成两类:
| 设备类型 | 代表操作系统 |
|---|---|
| PC 端 | Windows、macOS、Linux |
| 移动端 | Android、iOS、鸿蒙、塞班(已淘汰) |
3. Linux 的核心特性
- 多用户、多任务:支持多个用户同时登录,且能同时运行多个程序(比如一边跑 Tomcat 服务,一边用终端执行命令)。
- 多线程、多 CPU:能充分利用多核 CPU 资源,应对高并发场景(比如服务器同时处理多个用户请求)。
- 跨硬件架构:支持 32 位和 64 位硬件,兼容性强。
- 继承 Unix 设计思想:以网络为核心,天生适合做服务器。
4. 常见 Linux 发行版
Linux 有上百种发行版,核心区别在于 “社区维护” 和 “商业维护”:
- 社区开发版:免费开源,适合学习和个人使用,比如 Debian、Arch Linux。
- 商业开发版:有官方技术支持,适合企业级场景,比如 Red Hat Enterprise Linux(RHEL)、SUSE、Oracle Linux。
- 学习首选:CentOS:基于 RHEL 源码编译的社区版,完全免费且兼容性强,本文所有操作均以CentOS 7.9为例。
二、为什么选 Linux?聊聊它的 “硬优势”
很多新手会问:Windows 用得好好的,为什么要学 Linux?这部分我结合自己的实际踩坑经历,从稳定性、安全性两个核心维度对比,你就懂了。
1. 稳定性:服务器 “抗造” 的关键
Linux 的稳定性在服务器场景下尤为突出。我曾做过测试:把 Tomcat 服务部署在 Linux 上,连续运行 40 天,服务依然流畅,日志输出稳定,和第一天启动时完全一样;但部署在 Windows 上的 Tomcat,不到一周就开始 “卡顿”—— 发送请求要延迟几秒,日志输出断断续续,必须定期重启才能维持。
更夸张的是两次踩坑经历:
- 一次是启动 Tomcat 后,用鼠标点了一下服务器桌面的 Tomcat 图标,结果所有请求直接 “卡死”,后台请求全阻塞,只能重启。后来才知道,Windows 服务器会卡在鼠标操作的等待状态,优先响应人工操作而非服务请求。
- 另一次是眼睁睁看着 Windows 服务器 “消失”:正在查看 Tomcat 日志,日志突然中断,就像从未运行过一样,服务直接宕机。从那以后,我在服务器场景再也不敢用 Windows 了。
2. 安全性:开源生态的 “集体守护”
有人说 “Windows 和 Linux 都被黑客研究,有啥区别?” 其实核心在漏洞修复机制:
- Windows 属于微软独家所有,黑客发现漏洞后,往往会先敲诈企业再披露,导致漏洞利用周期长,攻击事件多;
- Linux 属于开源社区,没有 “独家拥有者”,全球开发者都能参与维护 —— 一旦发现漏洞,社区会快速提交修复方案,几小时内就能推送补丁,风险能快速化解。
3. 其他优势:节省资源、灵活度高
- 轻量省资源:Linux 对硬件配置要求低,同样的服务器配置,Linux 能比 Windows 多跑 2-3 个服务,内存和 CPU 占用率更低;
- 开源免费:企业无需支付版权费用(比如 Windows Server 的授权费),降低运维成本;
- 可定制性强:从内核到应用,都能根据需求裁剪,适合嵌入式设备(比如树莓派)、服务器等不同场景。
三、手把手教你装 Linux:VirtualBox+CentOS 7.9
入门 Linux 的第一步是 “装系统”,这里详细讲解用 VirtualBox 虚拟机安装 CentOS 7.9 的全过程,新手跟着做就能成功。
1. 准备工作
- 下载 VirtualBox:官网(VirtualBox.org)下载最新版,避免版本兼容性问题;
- 下载 CentOS 7.9 镜像:推荐阿里云镜像站(centos.org),选择 “CentOS-7-x86_64-DVD-2009.iso”(完整版,包含常用软件);
- 硬件要求:主机内存至少 4G(分配给虚拟机 2G 以上),硬盘空闲空间 20G 以上。
2. VirtualBox 新建虚拟机
步骤 1:新建虚拟电脑
打开 VirtualBox,点击 “新建”,进入配置界面:
- 名称:自定义(比如 “CentOS 7.9”),方便识别;
- 类型:选择 “Linux”;
- 版本:选择 “Red Hat (64-bit)”(CentOS 基于 RHEL,兼容性匹配);
- 模式:新手选 “典型”,高手可选 “专家模式” 自定义更多配置;
- 点击 “下一步”。

步骤 2:分配内存
- 建议内存:不小于 2G(即 2048MB),如果主机内存是 8G,可以分配 4G(4096MB);
- 注意:内存分配不能超过主机内存的 50%,否则会影响主机运行;
- 点击 “下一步”。

步骤 3:创建虚拟硬盘
- 选择 “现在创建虚拟硬盘”,点击 “创建”;
- 硬盘文件类型:默认 “VDI(VirtualBox 磁盘映像)”,无需修改;
- 存储方式:
- 动态分配:初始占用空间小,随使用逐渐增加(推荐新手,节省硬盘空间);
- 固定大小:创建速度慢,但运行时性能略好(适合服务器长期使用);
- 文件位置:自定义路径(比如 “D:\VirtualBox\CentOS 7.9”),避免 C 盘;
- 硬盘大小:至少 20G(推荐 20-40G),点击 “创建”。
3. 配置虚拟机并加载镜像
步骤 1:设置存储
- 选中新建的虚拟机(比如 “CentOS 7.9”),点击 “设置”→“存储”;
- 点击 “控制器:IDE” 下的 “空”,右侧 “属性” 中点击 “光盘图标”→“选择虚拟光盘文件”;
- 选中下载好的 CentOS 7.9 ISO 文件,点击 “确定”。

步骤 2:设置网络(关键!避免连不上网)
- 点击 “设置”→“网络”;
- 连接方式:选择 “桥接网卡”(让虚拟机和主机在同一网段,方便远程连接);
- 界面名称:选择主机当前使用的网卡(比如 WiFi 网卡或有线网卡,可在 Windows “网络连接” 中查看);
- 点击 “确定”。

4. 安装 CentOS 7.9
步骤 1:启动虚拟机
选中虚拟机,点击 “启动”,进入安装界面:
- 选择 “Install CentOS 7”(直接安装,不测试镜像);
- 等待加载后,进入语言选择界面,推荐选 “English(United States)”(避免中文路径乱码),点击 “Continue”。
步骤 2:配置安装摘要
进入 “INSTALLATION SUMMARY” 界面,需完成以下关键配置(带黄色警告的必须处理):
-
SOFTWARE SELECTION(软件选择):
- 新手选 “Minimal Install”(最小安装,只装核心组件,适合学习命令行);
- 如需图形界面,选 “GNOME Desktop”(带桌面环境,操作更直观);
- 点击 “Done” 保存。
-
INSTALLATION DESTINATION(安装目标):
- 选择之前创建的虚拟硬盘(比如 “ATA VBOX HARDDISK(20GiB)”);
- 分区方式:新手选 “Automatic partitioning(自动分区)”,高手可 “Custom(自定义分区)”;
- 点击 “Done” 保存。
-
NETWORK & HOST NAME(网络和主机名):
- 打开网卡:右侧 “Ethernet(enp0s3)” 点击 “OFF” 切换为 “ON”,此时会自动获取 IP(DHCP);
- 主机名:自定义(比如 “centos7”),点击 “Apply”;
- 点击 “Done” 保存。
-
KDUMP(内核崩溃转储):默认 “Enabled”,无需修改,直接 “Done”。

步骤 3:设置 root 密码和用户
点击 “Begin Installation” 开始安装,安装过程中配置用户:
-
ROOT PASSWORD(root 密码):
- root 是 Linux 超级管理员,拥有所有权限;
- 密码:建议设简单密码(比如 “123456”,学习用,生产环境需复杂密码);
- 提示 “密码太弱” 时,点击 “Done” 两次确认(忽略警告)。
-
USER CREATION(创建普通用户):
- 可选:创建一个普通用户(比如 “linuxuser”),避免直接用 root 操作(安全习惯);
- 勾选 “Make this user an administrator”(给普通用户 sudo 权限);
- 点击 “Done” 保存。

步骤 4:完成安装
等待安装完成(约 5-10 分钟),点击 “Reboot” 重启虚拟机,重启后输入 root 用户名和密码,登录成功!
四、Linux 入门避坑指南:常见问题及解决方案
装完系统后,新手常会遇到各种问题,这里整理 4 个高频问题及解决方法,帮你快速排障。
1. 问题 1:虚拟机启动报错 “VT-x/AMD-V 未启用”
- 原因:电脑 BIOS 中未启用硬件虚拟化(VT-x/AMD-V),VirtualBox 无法创建 64 位虚拟机;
- 解决方法:
- 关机,重启电脑时按快捷键进入 BIOS(不同品牌快捷键不同:ThinkPad 按 F1,戴尔按 F2,惠普按 F10);
- 找到 “Virtualization Technology(虚拟化技术)”,设置为 “Enabled”;
- 保存 BIOS 设置(按 F10),重启电脑。
2. 问题 2:虚拟机连不上网(无法 ping 通主机 / 外网)
- 排查步骤:
- 检查网络配置:确认 VirtualBox 中 “网络”→“桥接网卡” 的 “界面名称” 是否选对(比如主机连 WiFi,就选 WiFi 网卡);
- 检查网卡是否启用:登录 Linux,执行
ip addr,看 “enp0s3” 是否有 IP(比如 “192.168.1.100”); - 重启网络服务:执行
systemctl restart network,重新获取 IP。
3. 问题 3:远程工具(如 Xshell)连不上虚拟机
- 排查步骤:
- 确认 IP 正确:Linux 中执行
ip addr,记录 IP(比如 “192.168.1.100”); - 确认网段一致:主机 IP(Windows 执行
ipconfig)前三位需和虚拟机 IP 一致(比如主机 192.168.1.20,虚拟机 192.168.1.100,属于同一网段); - 关闭防火墙:Linux 默认防火墙会拦截 SSH 端口(22),执行
systemctl stop firewalld(临时关闭)或systemctl disable firewalld(开机不启动)。
- 确认 IP 正确:Linux 中执行
4. 问题 4:VirtualBox 报错 “80004005”
- 原因:常见于 Windows 系统,可能是虚拟机文件损坏、端口占用或权限问题;
- 解决方法:
- 重启 VirtualBox 和电脑,释放占用资源;
- 检查虚拟机文件路径是否有中文 / 空格,建议改为纯英文路径;
- 右键 VirtualBox 图标,选择 “以管理员身份运行”,解决权限问题。
五、Linux 常用工具:远程连接与命令行必备
Linux 服务器大多是 “无桌面” 的,需要用远程工具连接,同时掌握常用命令是入门关键。
1. 远程连接工具(4 款常用工具)
| 工具名称 | 特点 | 适用场景 |
|---|---|---|
| PuTTY | 体积小(仅几百 KB),免安装 | 第一次连接服务器、堡垒机连接 |
| Xshell | 功能强(支持标签页、文件传输),免费版够用 | 日常远程管理(推荐新手) |
| SecureCRT | 稳定性高,支持多种协议(SSH、Telnet) | 企业级运维,长期使用 |
| SSH Secure Shell | 集成文件传输功能,界面简洁 | 新手入门,简单操作 |
连接步骤(以 Xshell 为例):
- 打开 Xshell,点击 “新建”;
- 名称:自定义(比如 “CentOS 7.9”);
- 主机:输入 Linux 的 IP(比如 “192.168.1.100”);
- 端口:默认 22(SSH 协议端口);
- 点击 “连接”,输入用户名(root)和密码,登录成功。

2. 必学常用命令(附示例)
Linux 命令格式:命令 + [选项] + [参数],以下是高频命令详解:
(1)文件 / 目录操作命令
-
ls:列出目录内容(最常用)
ls:列出当前目录下的文件 / 目录(简略);ls -l(简写ll):列出详细信息(权限、所有者、大小、修改时间);ls -S:按文件大小倒序排列;ls -t:按修改时间倒序排列。
-
cd:切换目录
cd ..:进入上一级目录;cd .:进入当前目录(几乎不用,但 “./” 表示当前目录下的文件,比如./startup.sh);cd /home:通过绝对路径(以 “/” 开头)进入 /home 目录;cd test:通过相对路径(相对于当前目录)进入 test 目录;cd ~:回到当前用户的家目录(root 的家目录是 /root,普通用户是 /home/ 用户名);cd -:回到上一个目录。
-
pwd:显示当前目录路径
- 示例:
pwd,输出/root(表示当前在 root 的家目录)。
- 示例:
-
rm:删除文件 / 目录
rm test.txt:删除文件(需确认,按 y 删除);rm -f test.txt:强制删除文件(无需确认);rm -r testdir:删除目录(递归删除目录下所有内容);rm -rf testdir:强制删除非空目录(慎用! 避免误删系统文件)。
-
tar:压缩 / 解压文件(工作中常用)
- 解压 tar.gz 文件:
tar -zxvf jdk-8u231-linux-x64.tar.gzz:用 gzip 算法处理;x:解压;v:显示解压过程(进度);f:指定解压文件(必须放在最后)。
- 解压 tar.gz 文件:
(2)系统管理命令
-
alias:设置命令别名(简化长命令)
- 示例:
alias cepp='cd /etc/ppp/peers',之后输入cepp就相当于执行cd /etc/ppp/peers; - 删除别名:
unalias cepp; - 注意:临时别名重启后失效,如需永久生效,需写入
/etc/profile文件。
- 示例:
-
history:查看历史命令
history:列出所有历史命令(默认保存 1000 条);history | grep ls:搜索包含 “ls” 的历史命令(快速找之前执行过的命令)。
-
ip addr:查看 IP 地址
- 示例:
ip addr,输出中 “enp0s3” 下的 “inet” 后就是 IP(比如inet 192.168.1.100/24)。
- 示例:
(3)常用快捷键
Ctrl + C:终止当前正在执行的命令(比如命令卡住时);Ctrl + L:清屏(相当于clear命令);Ctrl + D:退出当前终端(相当于exit命令);Shift + Insert:粘贴(远程工具中常用,避免快捷键冲突);Ctrl + Insert:复制。
六、Linux 常用软件配置:Vim、JDK、Tomcat
学会安装和配置常用软件,才能真正用 Linux 做开发或运维,这里以 Vim(文本编辑)、JDK(Java 环境)、Tomcat(Web 服务器)为例,详细讲解步骤。
1. Vim:Linux 下的 “万能文本编辑器”
Vim 是 Linux 默认的文本编辑器,比记事本强大得多,支持多模式编辑,是修改配置文件的必备工具。
(1)安装 Vim
CentOS 最小安装默认没有 Vim,需手动安装:
- 执行命令:
yum -y install vim*(-y表示自动确认,无需手动按 y); - 安装失败排查:如果报错 “无法连接镜像源”,大概率是防火墙拦截,执行
systemctl stop firewalld关闭防火墙后再重试。

如果执行上面安装vim代码报错,总是安装失败,是因为虚拟机防火墙没关。要关闭一下防火墙。
# 查看防火墙状态
systemctl status firewalld.service
# 停止防火墙服务
systemctl stop firewalld.service
# 启动防火墙服务
systemctl start firewalld.service
# 取消防火墙服务的开机自启
systemctl disable firewalld.service
(2)Vim 的 3 种模式(核心!)
Vim 有 3 种核心模式,切换方式是入门关键:
| 模式名称 | 功能 | 进入方式 | 退出方式 |
|---|---|---|---|
| 普通模式 | 查看文件内容,不能编辑 | 启动 Vim 后默认进入(比如vim test.txt) |
按i/a/o等键进入编辑模式 |
| 编辑模式 | 编辑文件内容 | 普通模式下按i(插入)、a(追加) |
按ESC键回到普通模式 |
| 命令行模式 | 执行保存、退出、搜索等操作 | 普通模式下按:(冒号) |
执行命令后自动回到普通模式 |
(3)Vim 常用命令
- 退出与保存(命令行模式):
:q:退出 Vim(文件未修改时);:q!:强制退出,不保存修改(文件修改后不想保存时);:w:保存修改(不退出);:wq:保存并退出(最常用)。
- 编辑操作(编辑模式):
i:在光标前插入内容;a:在光标后追加内容;o:在光标下一行新建行并插入;R:进入替换模式(输入内容会覆盖光标后的字符)。
2. JDK:配置 Java 开发环境
很多 Java 项目(如 Spring Boot)需要 JDK 环境,这里以 JDK 8 为例,讲解手动安装步骤(避免 yum 安装的 OpenJDK 功能不全)。
(1)准备工作
- 下载 JDK 8:官网(Oracle.com)下载 Linux 版本(
jdk-8u231-linux-x64.tar.gz),需注册 Oracle 账号; - 上传 JDK 到 Linux:用远程工具(如 Xshell 的文件传输功能)将压缩包上传到
/usr/local/jdk目录(需先创建目录:mkdir -p /usr/local/jdk)。
(2)解压 JDK
执行命令:tar -zxvf /usr/local/jdk/jdk-8u231-linux-x64.tar.gz -C /usr/local/jdk
-C:指定解压目录,这里解压到/usr/local/jdk下,解压后会生成jdk1.8.0_231目录。
(3)配置环境变量
Linux 的环境变量保存在/etc/profile文件中,需用 Vim 修改:
- 打开文件:
vim /etc/profile; - 跳转到文件末尾:按
G(大写 G); - 插入环境变量配置(编辑模式下输入):
# JDK环境变量
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_231
export JRE_HOME=$JAVA_HOME/jre
export CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
- 保存退出:按
ESC→输入:wq→回车。

(4)加载环境变量并验证
- 加载配置:
source /etc/profile(修改/etc/profile后需重新加载才生效); - 验证是否成功:
javac -version,输出javac 1.8.0_231表示配置成功。

3. Tomcat:搭建 Web 服务器
Tomcat 是常用的 Java Web 服务器,用于部署 War 包(如 Java Web 项目),这里讲解安装和访问步骤。
(1)准备工作
- 下载 Tomcat 8.5:官网(tomcat.apache.org)下载
apache-tomcat-8.5.85.tar.gz; - 上传到 Linux:创建
/usr/local/tomcat目录(mkdir -p /usr/local/tomcat),将压缩包上传到该目录。
(2)解压 Tomcat
执行命令:tar -zxvf /usr/local/tomcat/apache-tomcat-8.5.85.tar.gz -C /usr/local/tomcat
(3)启动 Tomcat
- 进入 Tomcat 的 bin 目录:
cd /usr/local/tomcat/apache-tomcat-8.5.85/bin; - 执行启动脚本:
./startup.sh(注意:./表示执行当前目录下的脚本,不能省略,否则会提示 “命令不存在”); - 启动成功提示:
Tomcat started.。
(4)访问 Tomcat 首页(关键!)
-
查看 Linux IP:执行
ip addr,获取 IP(比如192.168.1.100); -
宿主机访问:打开浏览器,输入
http://192.168.1.100:8080(Tomcat 默认端口 8080); -
访问失败排查:
- 防火墙拦截:执行
systemctl stop firewalld关闭防火墙; - 端口未开放:如果不想关闭防火墙,可开放 8080 端口:
firewall-cmd --zone=public --add-port=8080/tcp --permanent,然后重启防火墙:systemctl restart firewalld; - 项目缺失:如果首页空白,可能是 Tomcat 的
webapps目录下没有默认项目,重新解压 Tomcat 即可。
- 防火墙拦截:执行
-
成功标志:浏览器显示 “Apache Tomcat/8.5.85” 首页,说明 Tomcat 搭建成功。
七、Linux 权限管理:看懂 “rwx”,学会 “chmod”
Linux 是多用户系统,权限管理是安全的核心 —— 通过控制 “谁能操作文件 / 目录”,避免误操作或恶意修改。
1. 权限的 3 个维度
Linux 权限分为 “权限类型”“用户分类”“权限表示” 三个维度,先理解这三个维度,再学命令就简单了。
(1)权限类型(3 种)
r(Read,读权限):能查看文件内容,或列出目录下的文件(比如ls);w(Write,写权限):能修改文件内容,或在目录下新建 / 删除文件;x(Execute,执行权限):能执行文件(比如脚本、可执行程序),或进入目录(比如cd)。
(2)用户分类(3 类)
u(User,所有者):文件 / 目录的创建者(比如 root 创建的文件,所有者是 root);g(Group,所属组):所有者所在的用户组(比如 root 属于 root 组,文件默认所属组是 root 组);o(Other,其他用户):既不是所有者,也不属于所属组的用户(比如普通用户 linuxuser)。
(3)权限的两种表示方式
- 符号表示:比如
rwxr-xr--,共 9 位,每 3 位对应一类用户(u、g、o):- 前 3 位(u):
rwx(所有者有读、写、执行权限); - 中间 3 位(g):
r-x(所属组有读、执行权限,无写权限); - 后 3 位(o):
r--(其他用户只有读权限)。
- 前 3 位(u):
- 数字表示:用 0-7 的数字对应权限(二进制转换),每类用户对应一个数字:
r=4,w=2,x=1,无权限 = 0;- 比如
rwx=4+2+1=7,r-x=4+0+1=5,r--=4+0+0=4; - 完整权限数字:
rwxr-xr--=754。
2. chmod:修改权限的命令
chmod是修改文件 / 目录权限的核心命令,有两种用法:符号法和数字法。
(1)符号法:chmod u/g/o +/- r/w/x 文件名
+:添加权限;-:移除权限;- 示例:
- 给文件
test.sh的所属组添加写权限:chmod g + w test.sh; - 给文件
test.sh的其他用户移除读权限:chmod o - r test.sh; - 给文件
test.sh的所有者添加执行权限:chmod u + x test.sh。
- 给文件
(2)数字法:chmod 三位数字 文件名
- 三位数字分别对应 u、g、o 的权限;
- 示例:
- 给文件
test.sh设置权限rwxr-xr-x(所有者有全部权限,其他用户有读和执行权限):chmod 755 test.sh; - 给文件
test.sh设置所有用户都有读、写、执行权限(生产环境慎用! 不安全):chmod 777 test.sh; - 给目录
testdir设置权限rwxr-x---:chmod 750 testdir。
- 给文件
(3)查看权限
执行ll 文件名,即可查看文件的权限,比如:
ll version.sh
# 输出:-rwxr-x---. 1 root root 1908 Jan 10 2023 version.sh
# 权限部分:-rwxr-x---(-表示是文件,d表示是目录)

八、Shell 脚本:Linux 下的 “批处理”,比你想的更强大
Shell 脚本是 Linux 运维的 “利器”—— 把一系列命令写在一个文件里,一次性执行,避免重复输入命令,还能实现循环、判断等逻辑,效率极高。
1. 什么是 Shell?
- 本质:Shell 是 “命令解释器”,介于用户和 Linux 内核之间,负责把用户输入的命令翻译成内核能理解的指令;
- Shell 脚本:把多个 Shell 命令按逻辑写在
.sh文件中,执行文件就能批量运行命令; - 对比:比 Windows 批处理(
.bat)功能强(支持函数、正则、管道等),比 Python/Java 更轻量(直接用 Linux 命令,无需编译)。
2. Shell 脚本的简单示例
比如写一个 “备份日志文件” 的脚本(backup_log.sh):
#!/bin/bash
# 备份/var/log目录下的所有.log文件到/backup/log
# 创建备份目录(如果不存在)
mkdir -p /backup/log
# 复制.log文件到备份目录
cp /var/log/*.log /backup/log/
# 输出备份完成信息
echo "日志备份完成!备份目录:/backup/log"
执行脚本步骤:
- 创建脚本文件:
vim backup_log.sh,粘贴上述内容,保存退出; - 给脚本添加执行权限:
chmod u + x backup_log.sh(只有所有者能执行); - 执行脚本:
./backup_log.sh; - 查看结果:
ls /backup/log,能看到复制的日志文件,且终端输出 “日志备份完成!”。
3. Shell 的进阶能力
Shell 不仅能批量执行命令,还支持:
- 条件判断:比如判断文件是否存在、变量是否为空;
- 循环:for 循环(遍历文件)、while 循环(持续监控);
- 函数:把重复逻辑封装成函数,复用代码;
- 管道与重定向:比如
ls -l | grep .log(筛选.log 文件)、echo "test" > test.txt(把内容写入文件)。
后续学习可以从简单脚本入手,比如 “自动安装 JDK”“监控 Tomcat 进程” 等,逐步掌握复杂逻辑。
九、总结:Linux 入门的核心是 “多练”
Linux 入门看似复杂,但只要按 “基础概念→安装系统→常用命令→软件配置” 的步骤学习,就能逐步掌握。这里给新手 3 个建议:
- 多敲命令:命令不是记出来的,是敲出来的 —— 比如
ls、cd、chmod这些命令,每天用 10 分钟练习,一周就能熟练; - 多踩坑:遇到报错不要慌(比如连不上网、权限不足),先自己排查(看日志、百度报错信息),解决问题的过程就是进步的过程;
- 多实践:学完命令后,试着做一些小项目(比如用 Tomcat 部署一个 Web 项目、写一个备份脚本),把知识点用起来,才能真正掌握。
Linux 的生态非常强大,从服务器运维到嵌入式开发,从大数据到人工智能,都离不开 Linux。入门只是开始,后续还可以学习 Shell 进阶、Linux 服务管理、Docker 容器等内容,逐步成为 Linux 高手!
如果这篇笔记对你有帮助,欢迎点赞收藏,也欢迎在评论区分享你的 Linux 学习经验~
更多推荐



所有评论(0)