Linux常用指令入门

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

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

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

1. 查看当前所在位置

pwd

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

/home/user/project

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

2. 查看目录内容

ls

常见用法:

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

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

3. 切换目录

cd 目录名

常见用法:

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

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

4. 创建文件和目录

创建目录:

mkdir notes

递归创建多级目录:

mkdir -p projects/linux/test

创建空文件:

touch hello.txt

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

5. 复制、移动和重命名

复制文件:

cp source.txt target.txt

复制目录:

cp -r old_dir new_dir

移动文件:

mv file.txt /tmp/

重命名文件:

mv old_name.txt new_name.txt

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

6. 删除文件和目录

删除文件:

rm file.txt

删除目录:

rm -r folder

强制删除:

rm -rf folder

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

7. 查看文件内容

一次性输出文件内容:

cat file.txt

分页查看长文件:

less file.txt

查看文件开头:

head file.txt
head -n 20 file.txt

查看文件末尾:

tail file.txt
tail -n 20 file.txt

实时查看日志:

tail -f app.log

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

8. 搜索文件内容

grep "keyword" file.txt

常见用法:

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

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

9. 查找文件

按文件名查找:

find . -name "*.md"

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

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

查找目录:

find . -type d -name "build"

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

10. 查看磁盘和文件大小

查看磁盘空间:

df -h

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

du -sh *

查看某个目录总大小:

du -sh folder

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

11. 查看和结束进程

查看当前用户的进程:

ps

查看所有进程:

ps aux

动态查看系统资源:

top

结束某个进程:

kill PID

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

kill -9 PID

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

12. 权限相关命令

查看权限:

ls -l

给脚本添加可执行权限:

chmod +x script.sh

修改文件拥有者:

sudo chown user:user file.txt

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

13. 压缩和解压

打包并压缩:

tar -czvf archive.tar.gz folder

解压:

tar -xzvf archive.tar.gz

常见参数含义:

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

14. 网络相关命令

测试网络连通:

ping github.com

下载文件:

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

查看当前机器 IP:

ip addr

在 macOS 上,类似命令是:

ifconfig

15. 常用组合

进入目录并查看内容:

cd project
ls -lh

查找日志中的错误:

grep -n "error" app.log

查看某个目录大小:

du -sh .

查看最近的日志输出:

tail -f app.log

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

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

总结

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

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

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

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计