跳转到内容

命令行与 Linux 基础

学命令行的真实收益,不是“看起来很专业”,而是两件很实际的事:

  1. 你能读懂别人给的教程。 装环境、跑代码、配服务器的说明,几乎全是以终端命令写的。看不懂,你就只能到处找人帮忙。
  2. 你能在没有图形界面的机器上干活。 实验室的服务器、租的算力机器、实习时的线上环境,都没有桌面可以点。

为什么现在就该学

本节:为什么现在就该学
场景 具体会发生什么
程序设计与实验课 编译、运行、传数据、跑脚本,很多步骤只有命令行版本。
科研 连实验室服务器跑实验、传数据集、看日志、挂长任务,全在终端里。
实习 看服务日志、部署、排查环境问题,是研发岗的日常。
日常生活 批量改文件名、批量转换格式、从一堆文件里搜关键词——这些用命令行是几秒钟的事。
  • 打开终端(macOS 用「终端」,Windows 可以用系统自带的终端或 WSL),敲一遍 pwd、ls、cd,确认自己在哪、有什么、能去哪。
  • 在你的家目录下建一个 practice 文件夹,在里面练习新建、复制、重命名、删除各一次。
  • 练会 Tab 补全:打路径时只敲前几个字母就按 Tab,让它自己补完。这一条能省下你大量时间。
  • 用 man 或 --help 查一个你刚用过的命令,看看它还有什么参数。
  • 如果你有实验室或课程服务器,只做一件事:登录上去,pwd 看看自己在哪,然后退出,不要改任何东西。

二十条够用的命令

本节:二十条够用的命令

先看「看和走」,再看「改」,最后看「连远端」。不要背,用的时候回来查。

命令 作用 备注
pwd 我现在在哪个目录 迷路时第一件事
ls 这个目录里有什么 ls -l 看详细信息,ls -a 连隐藏文件一起看
cd <目录> 切换目录 cd ~ 回家目录,cd .. 上一层
cat <文件> 把文件内容打到屏幕上 只适合小文件
less <文件> 分页看大文件 空格翻页,q 退出。看日志用它,不要用 cat
head / tail 看文件开头 / 结尾 tail -f 可以持续跟一个正在写的日志
grep <关键词> <文件> 在文件里搜内容 加 -r 搜整个目录,是查报错最常用的手段
find <目录> -name "*.csv" 按名字找文件 忘记文件放哪时用
man <命令> 查这个命令的说明书 不用联网,比搜索引擎靠谱
命令 作用 备注
mkdir <目录名> 新建目录 建多层加 -p
cp <源> <目标> 复制 复制目录加 -r
mv <源> <目标> 移动,也可以用来重命名 同一个目录下移动就是改名
rm <文件> 删除 删目录要加 -r,没有回收站
chmod <权限> <文件> 改权限 常见如 755、644,含义见下文
echo <文字> 输出一段文字 常用来测试和写进文件
tar 打包 / 解包 解压 .tar.gz 用 -xzf,打包用 -czf
ps 看正在运行的进程 想知道自己刚才跑的任务还在不在
kill <编号> 结束一个进程 从 ps 的输出里拿到编号
命令 作用 备注
ssh <用户>@<地址> 登录远程机器 第一次连接会问是否信任该主机
scp <文件> <用户>@<地址>:<路径> 在两台机器之间传文件 传大文件先压缩

两个比命令更重要的符号

本节:两个比命令更重要的符号
  • 管道 |:把左边命令的输出,当成右边命令的输入。例如“看日志的最后一部分,并在里面搜错误”,一条命令就能完成。
  • 重定向 > 和 >>:把输出写进文件。> 会覆盖原内容,>> 是追加。用 > 之前先确认文件名。

这两件事搞懂了,命令行的报错你能自己解决一大半。

路径:

  • 以 / 开头的是绝对路径,从根目录算起;否则是相对路径,从你当前所在位置算起。
  • ~ 是你的家目录,. 是当前目录,.. 是上一层。
  • 路径里有空格要加引号("我的 文件.txt"),否则会被当成两个参数——这是初学者最常见的一类怪错误。
  • 以 . 开头的文件是隐藏文件,ls 默认看不到,要用 ls -a。

权限:用 ls -l 看到的那串 rwxr-xr-x,是三组权限:

位置 管谁 常见含义
第一组 rwx 文件属主 可读、可写、可执行
第二组 r-x 同组用户 可读、可执行,不能改
第三组 r-x 其他人 同上

chmod 后面的数字就是这三组的简写:7 是 rwx,5 是 r-x,4 是 r--。

  • 755:属主全权限,其他人可读可执行——常用于目录和脚本。
  • 644:属主可读写,其他人只读——常用于普通文件。

连实验室 / 课程服务器

本节:连实验室 / 课程服务器

第一次连服务器之前,先问清三件事:

  1. 地址和端口是什么(以及用不用跳板机)。
  2. 账号怎么拿(找谁开通、用不用密钥)。
  3. 要不要在校园网或学校 VPN 里才能连(校外访问的通用做法见校内常用链接)。

第一次登录之后,只做三件无害的事:pwd 看自己落在哪个目录、ls -a 看家目录里有没有别人留的说明文件、确认有没有现成的环境或使用文档。不要急着装东西、改配置。

几个保命的习惯:

  • 改任何配置前先备份:cp 配置文件 配置文件.bak。改坏了能一条命令还原。
  • 长任务要用会话保持工具(例如 tmux 或 screen)。否则你的网络一断,跑了两小时的任务就没了。
  • 先看别人怎么跑,再决定自己怎么跑。共享机器上把 CPU 和内存占满,会影响整个课题组。
  • 代码和数据分开放,日志写进固定目录,别把家目录塞满。
  • 不要用别人的账号,也不要把自己的密钥和密码给别人。

常见报错怎么读

本节:常见报错怎么读

报错的英文其实很直白,把它翻译成人话就好办了:

报错 大概率原因 下一步
Permission denied 权限不够,或文件不属于你 先看 ls -l 的权限位和属主;不要先想 sudo
command not found 没装、拼错,或不在环境变量里 确认拼写,查一下有没有安装,看是不是需要先激活环境
No such file or directory 路径写错、大小写不对、名字里有空格 用 Tab 补全代替手打路径
Connection refused / timed out 地址或端口不对、服务没开、网络环境不对 先确认是不是必须在校园网 / VPN 内
Killed 内存超限,被系统强制结束 减小数据规模、分批处理,或申请更多资源
No space left on device 磁盘满了 看是哪个目录占了空间,清理自己的临时文件
中文显示成乱码 编码不一致 统一用 UTF-8;注意在 Windows 上编辑过的文件
bad interpreter / 奇怪的语法错误 脚本在 Windows 上编辑过,换行符不一样 用专门的转换方式处理换行符,或在服务器上重新编辑
  • Missing Semester 中文版 —— 终端那一讲把管道、权限、脚本讲得比大多数教程清楚。只读终端和数据整理两讲,就够覆盖本文的全部内容还有余。
  • 计算机系学生科协技能引导文档 —— 里面有更完整的 Linux 入门,包括 shell、文件系统、SSH 的细节,适合当参考手册。
  • 清华镜像站 —— 装环境、下软件、拉依赖时用得上。每个仓库页面上都写了自己的使用方式,照着改配置能明显加快下载速度。
  • 校内 VPN 入口 —— 不在校园网时访问校内资源用。具体使用方式和适用范围以官方说明为准。

免责声明:本站是学生自发整理的经验分享,不代表清华大学官方立场。涉及培养方案、选课规则、绩点计算、保研政策等一切制度性内容, 请以教务、院系和学校官方通知为准。

发现内容有误、过期,或想补充一篇经验帖?欢迎到GitHub Issues提出,或直接编辑对应页面提交 PR。

维护者入口:站内后台—— GitHub 登录后可改文字 / 传图 / 嵌视频,保存会自动开 PR,合并后上线。

© 2026 清华生存指南 · 内容采用 CC BY-NC-SA 4.0 许可 · 由一群学长学姐共同维护