第一次使用 Linux 终端:目录、文件和帮助命令

2026-10-9 / 0 评论 / 2 阅读

第一次使用 Linux 终端:目录、文件和帮助命令 原创示意图

Ubuntu Server 的主要操作入口是终端(Terminal)。终端是显示输入和输出的窗口;外壳(Shell)负责解释命令;命令行界面(Command-line Interface,CLI)则是人与系统交互的方式。三个词经常混用,但理解这个区别能帮助你读懂文档。

一、看懂命令提示符

登录后常见的提示符类似:

patrick@server:~$

patrick 是用户名(Username),server 是主机名(Hostname),~ 代表当前用户的家目录(Home directory),普通用户以 $ 结尾,root 常以 # 结尾。教程中的 $ 或 # 通常只是提示符,不要跟着复制。

先执行三个无风险命令:

whoami
pwd
ls

whoami 显示当前身份;pwd 是打印工作目录(Print Working Directory);ls 列出目录内容。想看隐藏文件和详细信息,可用 ls -la。以点开头的文件,如 .bashrc,默认属于隐藏文件(Hidden file)。

二、理解路径并移动位置

Linux 从根目录 / 开始。以 / 开头的是绝对路径(Absolute path),例如 /etc/ssh/sshd_config;相对于当前位置的是相对路径(Relative path),例如 notes/today.txt。

常用移动命令:

cd /etc       # 进入 /etc
cd ..         # 返回上一级
cd ~          # 回到家目录
cd -          # 回到上一次所在目录

按 Tab 可以补全命令或路径,连续按两次会显示候选项。按方向键上(Up Arrow)可调出历史命令,Ctrl+C 可中止当前正在前台运行的命令。

三、在安全目录里练习文件操作

不要一上来就在 /etc 或 /var 修改文件。先建立自己的练习区:

mkdir -p ~/terminal-lab/docs
cd ~/terminal-lab
touch first.txt
printf 'hello linux\n' > first.txt
cp first.txt docs/copy.txt
mv docs/copy.txt docs/note.txt
ls -l docs

mkdir -p 可连同上级目录一起创建;touch 创建空文件;cp 是复制(Copy);mv 既能移动(Move),也能重命名。覆盖符号 > 会清空目标文件后再写入,追加符号 >> 才是在末尾增加内容,这一点一定要分清。

删除前先确认当前位置:

pwd
rm -i docs/note.txt
rmdir docs

rm -i 会在删除前询问。rmdir 只能删除空目录。初学阶段不要使用来源不明的 rm -rf 命令,更不要配合通配符在管理员身份下执行。

四、查看文件而不修改它

短文件可用 cat first.txt;长文件更适合 less 文件名,按空格翻页,按 q 退出。查看开头和结尾可用:

head -n 10 /etc/passwd
tail -n 20 /var/log/syslog
tail -f /var/log/syslog

tail -f 会持续跟踪日志(Follow),按 Ctrl+C 停止。如果系统没有 /var/log/syslog,可改用 journalctl 查看 systemd 日志。

五、权限、sudo 和帮助系统

执行 ls -l 时,开头的 rwx 分别表示读取(Read)、写入(Write)和执行(Execute)。看到“Permission denied”不要立刻在所有命令前加 sudo,先判断这个文件是否本来就该由你修改。

需要系统管理员权限时才使用:

sudo systemctl status ssh

查帮助有三个层次:

ls --help
man ls
man -k copy

--help 适合快速查参数;手册页(Manual page)信息更完整,在 man 中按 / 输入关键词搜索、按 n 跳到下一处、按 q 退出;man -k 可按功能关键词寻找可能的命令。

六、完成一次小练习

cd ~/terminal-lab
date >> first.txt
uname -a >> first.txt
wc -l first.txt
less first.txt

这段练习把当前时间和内核信息追加到文件,再统计行数并查看结果。成功后你已经掌握了目录定位、文件创建、追加输出和阅读文本这条最基本的运维链路。

七、搜索文件和文本

知道文件大概叫什么时,可以从限定目录开始查找:

find ~/terminal-lab -type f -name '*.txt'
find /etc -maxdepth 2 -type f -name '*ssh*' 2>/dev/null

-type f 只找普通文件,-name 按名称匹配,星号 * 是通配符(Wildcard)。通配符最好放在引号里,避免先被当前 Shell 展开。全盘 find / 会慢并产生很多权限提示,新手应尽量缩小目录范围。

如果要查文件内容,用 grep:

grep 'linux' first.txt
grep -in 'error' ~/terminal-lab/*.txt

-i 忽略大小写,-n 显示行号。查看配置时,可用 grep -v '^#' 文件名 排除以 # 开头的注释,但要注意空行仍会显示。

八、编辑文本前先备份

Ubuntu Server 通常自带 nano,操作提示显示在屏幕底部,符号 ^ 代表 Ctrl。例如 ^O 是按 Ctrl+O 保存(Write Out),^X 是按 Ctrl+X 退出(Exit):

cp first.txt first.txt.bak
nano first.txt

修改系统配置时,先复制一份带日期的备份,再用 sudo nano 打开。保存后先运行对应程序的配置检查,而不是立刻重启。例如 Nginx 用 sudo nginx -t,SSH 可用 sudo sshd -t。配置检查通过后再重新加载(Reload)服务,比盲目重启更稳妥。

九、几个提高效率的键盘操作

  • Ctrl+A 移到行首,Ctrl+E 移到行尾。
  • Ctrl+U 删除光标前的内容,Ctrl+K 删除光标后的内容。
  • Ctrl+R 搜索历史命令,继续按 Ctrl+R 查找更早的匹配项。
  • clear 或 Ctrl+L 清理屏幕显示,但不会删除历史记录。
  • history 查看历史;涉及密码、令牌的内容不要直接写进命令行,否则可能留在历史文件中。

当命令包含 IP、磁盘设备名或删除操作时,即使能从历史记录调出,也要重新检查参数。提高速度不能以牺牲确认步骤为代价。

十、本地终端和远程 SSH 的区别

你在 ESXi 控制台、Hyper-V 虚拟机连接(Virtual Machine Connection)里看到的是机器本地控制台;通过 ssh 用户名@IP 打开的则是远程会话(Remote session)。两者操作的是同一套文件和服务,但网络断开只会影响 SSH 会话,通常不会让服务器关机。

远程操作前可以用下面几条命令确认“我是谁、在哪台机器、从哪里登录”:

whoami
hostname
pwd
w

同时管理多台服务器时,最危险的错误往往不是命令写错,而是在错误的窗口对错误的主机执行了正确命令。建议为终端标签写上主机名,执行关机、重启、磁盘或防火墙操作前再次运行 hostname。

SSH 突然断开时,先不要重复执行刚才的命令。重新登录后用 ps、systemctl status 或日志确认它是否已经完成。像软件升级这样的操作可能在连接断开后停止,也可能仍在运行;盲目再启动一次会让排障更复杂。长期任务应放入 tmux 会话或交给 systemd 管理。

退出当前 Shell 使用 exit 或 Ctrl+D。如果你先 SSH 到跳板机,再从跳板机登录服务器,每执行一次 exit 只会退出一层,留意提示符中的用户名和主机名变化。

本文是中文学习整理,命令示例经过重新组织。资料来源:Ubuntu Server 官方文档:Welcome to the terminal。

评论一下?

OωO
取消