Linux基础运维篇:Linux 终端与 Shell 基础(第006课)
ahcoder 2025-06-13 10:52 5 浏览
一、啥是终端?先搞懂「人和电脑对话的窗口」
你可以把 终端(Terminal) 理解成一个「文字版的电脑操作台」。
在 Windows 里,类似「命令提示符」或 PowerShell;在 Linux 里,它是你和系统直接对话的地方 —— 你输入文字命令,系统返回结果,全靠打字交流,没有鼠标点点点。
为啥要用终端?
- 高效:复杂操作敲命令比鼠标点几十下快得多(比如批量处理几百个文件)。
- 万能:Linux 服务器没有图形界面,全靠终端操作;即使有图形界面,高级功能也得靠终端。
- 装酷:程序员必备技能,懂的都懂
怎么打开终端?
- 快捷键:大部分 Linux 发行版(比如 Ubuntu、CentOS)按 Ctrl + Alt + T 直接打开。
- 菜单找:在应用程序里搜索「终端」「Terminal」或「控制台」。
- 服务器连接:用 Putty、Xshell 等工具远程连接 Linux 服务器,本质也是打开终端。
二、Shell 是啥?终端背后的「翻译官」
终端只是个「窗口」,真正干活的是 Shell—— 它负责把你敲的命令翻译成系统能听懂的指令,再把结果返回给你。
常见的 Shell 有哪些?
- Bash(Bourne Again SHell):Linux 默认的 Shell,最常用,兼容性最强,新手入门首选。
- Zsh(Z Shell):比 Bash 更强大,支持主题、自动补全、插件(比如 Oh My Zsh),极客最爱。
- Fish(Friendly Interactive SHell):界面更友好,命令自动建议,但小众一些。
- 其他:比如 Dash、Ksh 等,用得较少。
怎么看当前用的是哪个 Shell?
在终端输入:
echo $SHELL # 输出当前 Shell 的路径,比如 /bin/bash
怎么切换 Shell?
比如从 Bash 换成 Zsh(需要先安装 Zsh):
chsh -s /bin/zsh # 改默认 Shell(需重启终端生效)
zsh # 临时切换,关掉终端就变回原来的 Shell
三、Shell 命令基础:学会「说人话」让电脑干活
Shell 命令的格式通常是:
命令名 [选项] [参数]
- 命令名:比如 ls(查看文件)、cd(切换目录)、mkdir(创建文件夹)。
- 选项:用 - 开头,修改命令的行为,比如 ls -l(显示详细信息)。
- 参数:命令操作的对象,比如 ls /etc(查看 /etc 目录下的文件)。
1. 必学的基础命令(每天都在用)
命令 | 作用 | 例子 |
ls | 列出文件 / 目录 | ls -a(显示隐藏文件) |
cd | 切换目录 | cd ~(回到用户主目录) |
mkdir | 创建目录 | mkdir mydir(创建 mydir 文件夹) |
rm | 删除文件 / 目录 | rm file.txt(删文件) |
cp | 复制文件 / 目录 | cp a.txt b.txt(复制 a 到 b) |
mv | 移动文件(或重命名) | mv old.txt new.txt(重命名) |
cat | 查看文件内容 | cat config.conf(显示文件内容) |
nano/vim | 编辑文件 | nano hello.txt(用 nano 编辑) |
sudo | 以管理员权限执行命令 | sudo apt install xxx(安装软件) |
2. 通配符:让命令更灵活
通配符可以批量匹配文件,比如:
- *:匹配任意字符(任意多个),比如 *.txt 匹配所有后缀为 .txt 的文件。
- ?:匹配单个字符,比如 file?.txt 匹配 file1.txt、fileA.txt 等。
- [ ]:匹配括号内的任意一个字符,比如 [abc].txt 匹配 a.txt、b.txt、c.txt。
3. 管道和重定向:让命令「接力干活」
- 管道(|):把前一个命令的结果传给后一个命令处理,比如:
ls -l | grep "log" # 先列出详细信息,再筛选包含 "log" 的行
- 重定向(>、>>):把命令结果保存到文件,比如:
ls > list.txt # 把结果覆盖写入 list.txt(文件不存在则创建)
ls >> list.txt # 把结果追加到 list.txt 末尾
四、Shell 环境:自定义你的「专属操作台」
1. 环境变量:给 Shell 「开小灶」
环境变量是 Shell 里的全局参数,比如 PATH 决定了系统去哪里找命令。
- 查看所有环境变量:echo $环境变量名,比如 echo $PATH。
- 临时修改(当前终端生效):
export MYVAR="hello" # 创建自定义变量
echo $MYVAR # 输出 hello
- 永久修改(重启后生效):
把 export 命令 写入 Shell 配置文件,比如: - Bash:用户级配置 ~/.bashrc,系统级配置 /etc/bashrc
- Zsh:用户级配置 ~/.zshrc
2. 别名(Alias):给命令「起外号」
把常用的长命令简化,比如:
alias ll='ls -l' # 以后敲 ll 就等于敲 ls -l
alias rm='rm -i' # 让 rm 命令删除前先询问(防止手滑)
临时生效直接敲命令,永久生效需要把别名写入 Shell 配置文件(和环境变量一样)。
3. 快捷键:效率拉满
快捷键 | 作用 |
Ctrl + C | 终止当前命令(比如程序卡住时) |
Ctrl + D | 退出终端(或输入结束) |
Ctrl + L | 清屏(相当于 clear 命令) |
Ctrl + R | 搜索历史命令 |
Tab | 自动补全(敲一半按 Tab,比如 cd /u 按 Tab 补成 /usr) |
↑/↓ | 切换历史命令 |
五、Shell 脚本:让电脑「批量打工」
如果经常需要重复执行一堆命令,可以把它们写成 Shell 脚本,一键运行。
1. 脚本格式(以 Bash 为例)
#!/bin/bash # 第一行必须声明用哪个 Shell 执行
echo "Hello World!" # 输出内容
ls -l # 列出当前目录文件
2. 怎么运行脚本?
- 保存为 .sh 文件,比如 script.sh。
- 赋予执行权限:
chmod +x script.sh # 让文件可执行
- 运行:
./script.sh # 直接运行(需要在当前目录)
3. 脚本进阶:变量、条件、循环
- 变量:
name="小明"
echo "你好,$name" # 输出:你好,小明
- 条件判断:
if [ $1 -gt 10 ]; then # $1 是脚本的第一个参数
echo "参数大于 10"
else echo "参数小于等于 10"
fi
- 循环:
for file in *.txt; do # 遍历所有 .txt 文件
echo "处理文件:$file"
done
六、避坑指南:新手常犯的错
- 权限问题:遇到 Permission denied,记得加 sudo(但别乱用 sudo rm -rf /,会删光系统文件!)。
- 路径错误:分不清「绝对路径」和「相对路径」,比如 /home/user 是绝对路径,../parent 是相对路径(相对于当前目录)。
- 命令敲错:按 Tab 补全,别硬记;敲错了按 Ctrl + C 终止,别慌。
七、总结:终端和 Shell 是 Linux 的「灵魂」
- 终端是入口,是你和 Linux 对话的窗口;
- Shell是翻译官,把你的命令变成系统能执行的操作;
- 学会基础命令、环境配置、脚本编写,就能玩转 Linux 的「幕后世界」。
刚开始可能觉得难,但多敲多练,你会发现终端比图形界面更「顺手」—— 就像开车,手动挡一开始难,但熟练后能精准控制每一步。
最后,推荐个练习方法:每天学 3 个新命令,用脚本批量处理小任务(比如整理文件),1 个月就能入门!
相关推荐
- linux服务器--PVE(一)简介及安装(pve安装ifupdown2)
-
1.PVE(ProxmoxVirtualEnvironment)简介ProxmoxVirtualEnvironment基于debian,是一个完整的、开源的企业虚拟化服务器管理平台。它在一个平...
- 手把手教你!如何在 Linux 服务器中搭建 Sentinel 环境?
-
你在Linux服务器上搭建Sentinel环境时,是不是也遇到过各种报错,要么是启动失败,要么是配置后无法正常访问控制台?看着同事顺利搭建好,自己却一头雾水,别提多着急了!其实,很多互联网大厂...
- Linux高性能服务器技术总结(linux高性能服务器编程怎么样)
-
1服务器简介服务器是提供计算服务的设备,由于服务器需要响应用户请求,因此在处理能力、稳定性、安全性、可扩展性、可管理性等方面提出了较高要求。随着虚拟化技术的进步,云服务器(ECS)已经快速的在...
- 从 0 到 1:使用 Ansible 自动化运维 Linux 服务器全流程
-
Ansible是一款强大的IT自动化工具,广泛用于服务器配置管理、软件部署和任务自动化。本文将带你从零开始,学习如何使用Ansible对Linux服务器进行自动化运维,涵盖Ansibl...
- 诡异!Win11 “此电脑” 莫名现 Linux 图标,啥情况?
-
我这电脑出了个怪事儿,“此电脑”下面莫名其妙多了个Linux的图标,可我压根儿就没装过Linux系统啊!琢磨了一下,估计是系统可选功能里那个“适用于Linux的Windows子系统”插件搞的鬼。实例系...
- Linux基础运维篇:Linux 终端与 Shell 基础(第006课)
-
一、啥是终端?先搞懂「人和电脑对话的窗口」你可以把终端(Terminal)理解成一个「文字版的电脑操作台」。在Windows里,类似「命令提示符」或PowerShell;在Linux里,...
- 2025罗技大师系列智「简」大赛-罗技大师系列-MX KEYS S键盘评测
-
在2025罗技大师系列智「简」大赛中,MXKEYSS键盘凭借其卓越的设计与智能化体验,成为众多创作者的理想之选。本篇文章将深入评测这款键盘的核心功能、使用体验及创新亮点,帮助你了解它如何提升...
- Linux编辑命令vim(linux使用vim编辑文件)
-
1、vi编辑器简介vim是一个全屏幕纯文本编辑器,是vi编辑器的增强版,我们主要讲解的是vim编辑器。可以利用别名让输入vi命令的时候,实际上执行vim编辑器,例如:#定义别名...
- 全选是ctrl加什么?全选的快捷键是什么介绍
-
如何高效使用「全选」快捷键(Ctrl+A/A)提升工作效率在日常电脑操作中,"全选"是最基础却至关重要的功能之一。无论您是文字工作者、程序员还是普通用户,掌握全选快捷键都能极大提升操作...
- Linux命令大全(linux命令大全书)
-
个人博客:https://chunyu.work/文章较长,可以收藏备用常用快捷键(1)ctrl+c:停止进程(2)ctrl+l:清屏(3)善于用tab键(4)上下键:查找执行过的命令文件目录类(...
- Xshell是做什么用的?Xshell使用教程分享
-
Xshell是一款功能强大的终端模拟器,支持SSH1,SSH2,SFTP,TELNET,RLOGIN和SERIAL。通过提供业界先进的性能,Xshell包含了其他SSH客户端无法发现的功能和优势,作为...
- Java 开发者线上问题排查常用的 15 个 Linux 命令
-
作为Java开发者,线上环境的问题排查是日常工作的重要组成部分。熟练掌握Linux命令能大幅提升排查效率,快速定位进程异常、日志错误、性能瓶颈等核心问题。本文结合Java应用特点,整理1...
- Linux的常用命令就是记不住,怎么办?
-
1.帮助命令1.1help命令#语法格式:命令--help#作用:查看某个命令的帮助信息#示例:#ls--help查看ls命令的帮助信息#netst...
- 别再乱学 Linux 了!这 5 个核心技巧,让你效率飙升 10 倍!
-
在Linux学习的漫漫长路上,不少人犹如在黑暗中摸索的行者,四处碰壁,学习效果却不尽如人意。你是不是也曾在海量的Linux知识面前迷失方向,感觉自己投入了大量时间,却收效甚微?其实,掌握Li...
- Linux终端神器Terminator时隔1年回归,2.1.5新版发布
-
IT之家5月23日消息,科技媒体linuxiac今天(5月23日)发布博文,报道称Terminator在沉寂一年后,最新发布了2.1.5版本,在分割终端窗格时支持克隆SSH...
- 一周热门
- 最近发表
-
- linux服务器--PVE(一)简介及安装(pve安装ifupdown2)
- 手把手教你!如何在 Linux 服务器中搭建 Sentinel 环境?
- Linux高性能服务器技术总结(linux高性能服务器编程怎么样)
- 从 0 到 1:使用 Ansible 自动化运维 Linux 服务器全流程
- 诡异!Win11 “此电脑” 莫名现 Linux 图标,啥情况?
- Linux基础运维篇:Linux 终端与 Shell 基础(第006课)
- 2025罗技大师系列智「简」大赛-罗技大师系列-MX KEYS S键盘评测
- Linux编辑命令vim(linux使用vim编辑文件)
- 全选是ctrl加什么?全选的快捷键是什么介绍
- Linux命令大全(linux命令大全书)
- 标签列表
-
- linux 远程 (37)
- u盘 linux (32)
- linux 登录 (34)
- linux 路径 (33)
- linux 文件命令 (35)
- linux 是什么 (35)
- linux 界面 (34)
- 查看文件 linux (35)
- linux 语言 (33)
- linux代码 (32)
- linux 查看命令 (33)
- 关闭linux (34)
- root linux (33)
- 删除文件 linux (35)
- linux 主机 (34)
- linux与 (33)
- linux 函数 (35)
- linux .ssh (35)
- cpu linux (35)
- 查看linux 系统 (32)
- linux 防火墙 (33)
- linux 手机 (32)
- linux 镜像 (34)
- linux ip地址 (34)
- linux 用户查看 (33)