1272 words
6 minutes
Linux常用指令入门

最近在和我一个学长做项目。因为十分贫穷,加上校内服务器十分堵塞,压根排不到我们,最后我们决定上网租服务器(虽然发现这个决策使得我们的钱包更加不饱满)。这个时候发现学长并不熟悉 Linux 的一些常用指令,这也启发我给自己的 blog 加上一篇关于常用指令的推文。

Linux 的很多操作都可以通过命令行完成。刚开始接触时,不需要一次性记住所有命令,先掌握目录切换、文件操作、文件内容查看、权限管理和进程查看这几类常用指令,就可以完成大部分日常工作。

本文记录一些入门阶段最常用的 Linux 指令,方便之后查阅。

1. 查看当前所在位置#

Terminal window
pwd

pwd 会显示当前终端所在的目录路径。例如:

Terminal window
/home/user/project

当你不知道自己现在在哪个文件夹时,可以先运行这个命令。

2. 查看目录内容#

Terminal window
ls

常见用法:

Terminal window
ls # 查看当前目录下的文件
ls -l # 以详细列表形式显示
ls -a # 显示隐藏文件
ls -lh # 以更易读的大小单位显示

在 Linux 中,以 . 开头的文件或目录是隐藏文件,例如 .git.bashrc

3. 切换目录#

Terminal window
cd 目录名

常见用法:

Terminal window
cd /home/user # 切换到指定绝对路径
cd project # 进入当前目录下的 project 文件夹
cd .. # 返回上一级目录
cd ~ # 回到当前用户的家目录
cd - # 回到上一次所在目录

绝对路径从 / 开始,相对路径从当前目录开始。

4. 创建文件和目录#

创建目录:

Terminal window
mkdir notes

递归创建多级目录:

Terminal window
mkdir -p projects/linux/test

创建空文件:

Terminal window
touch hello.txt

touch 如果遇到不存在的文件,会创建它;如果文件已经存在,会更新它的修改时间。

5. 复制、移动和重命名#

复制文件:

Terminal window
cp source.txt target.txt

复制目录:

Terminal window
cp -r old_dir new_dir

移动文件:

Terminal window
mv file.txt /tmp/

重命名文件:

Terminal window
mv old_name.txt new_name.txt

mv 既可以移动文件,也可以重命名文件,具体取决于目标路径。

6. 删除文件和目录#

删除文件:

Terminal window
rm file.txt

删除目录:

Terminal window
rm -r folder

强制删除:

Terminal window
rm -rf folder

rm -rf 很危险,它不会进入回收站,执行前一定要确认路径是否正确。

7. 查看文件内容#

一次性输出文件内容:

Terminal window
cat file.txt

分页查看长文件:

Terminal window
less file.txt

查看文件开头:

Terminal window
head file.txt
head -n 20 file.txt

查看文件末尾:

Terminal window
tail file.txt
tail -n 20 file.txt

实时查看日志:

Terminal window
tail -f app.log

查看程序日志时,tail -f 非常常用。

8. 搜索文件内容#

Terminal window
grep "keyword" file.txt

常见用法:

Terminal window
grep "error" app.log
grep -n "error" app.log # 显示行号
grep -i "error" app.log # 忽略大小写
grep -r "TODO" . # 在当前目录递归搜索

如果只记一个搜索命令,先记住 grep -r "关键词" .

9. 查找文件#

按文件名查找:

Terminal window
find . -name "*.md"

查找当前目录下所有 Markdown 文件:

Terminal window
find . -type f -name "*.md"

查找目录:

Terminal window
find . -type d -name "build"

find 的第一个参数表示从哪里开始找,. 表示当前目录。

10. 查看磁盘和文件大小#

查看磁盘空间:

Terminal window
df -h

查看当前目录下各文件和目录大小:

Terminal window
du -sh *

查看某个目录总大小:

Terminal window
du -sh folder

其中 -h 表示 human-readable,会用 KB、MB、GB 这种更容易理解的单位显示。

11. 查看和结束进程#

查看当前用户的进程:

Terminal window
ps

查看所有进程:

Terminal window
ps aux

动态查看系统资源:

Terminal window
top

结束某个进程:

Terminal window
kill PID

如果进程无法正常结束,可以使用:

Terminal window
kill -9 PID

PID 是进程编号,可以通过 ps auxtop 找到。

12. 权限相关命令#

查看权限:

Terminal window
ls -l

给脚本添加可执行权限:

Terminal window
chmod +x script.sh

修改文件拥有者:

Terminal window
sudo chown user:user file.txt

sudo 表示用管理员权限执行命令。使用 sudo 前要确认命令确实需要更高权限。

13. 压缩和解压#

打包并压缩:

Terminal window
tar -czvf archive.tar.gz folder

解压:

Terminal window
tar -xzvf archive.tar.gz

常见参数含义:

c: create,创建压缩包
x: extract,解压
z: 使用 gzip
v: 显示过程
f: 指定文件名

14. 网络相关命令#

测试网络连通:

Terminal window
ping github.com

下载文件:

Terminal window
curl -O https://example.com/file.zip

查看当前机器 IP:

Terminal window
ip addr

在 macOS 上,类似命令是:

Terminal window
ifconfig

15. 常用组合#

进入目录并查看内容:

Terminal window
cd project
ls -lh

查找日志中的错误:

Terminal window
grep -n "error" app.log

查看某个目录大小:

Terminal window
du -sh .

查看最近的日志输出:

Terminal window
tail -f app.log

查找当前目录下所有 Python 文件:

Terminal window
find . -type f -name "*.py"

总结#

Linux 命令入门可以先按使用场景记忆:

  • 位置和目录:pwdlscd
  • 文件操作:mkdirtouchcpmvrm
  • 内容查看:catlessheadtail
  • 搜索查找:grepfind
  • 系统状态:dfdupstop
  • 权限管理:chmodchownsudo

这些命令不需要死记硬背,最好的方式是在真实项目和日常操作里反复使用。