⌨️ 基础命令
大家好,我是长安!这一章是重头戏,长安带你掌握 Linux 最常用的那些命令。
🎯 本章目标
跟着长安读完这一章,你将掌握:
- Linux 最常用的 20+ 个命令
- 命令的基本格式和参数
- 如何查看命令帮助
📐 命令的基本格式
在学习具体命令之前,先了解一下 Linux 命令的基本格式:
命令 [选项] [参数]
举个例子:
ls -l /home
│ │ │
│ │ └── 参数:对什么操作(/home 目录)
│ │
│ └── 选项:怎么操作(-l 表示详细列表)
│
└── 命令:做什么(ls 列出目录内容)
💡 小贴士
- 选项通常以
-或--开头 -l是短选项,--long是长选项- 多个短选项可以合并:
ls -l -a=ls -la
📂 目录导航命令
pwd - 我在哪?
Print Working Directory,显示当前所在目录。
pwd
# 输出示例:/home/xiaoming
这个命令很简单但很重要!迷路的时候就用它。
cd - 去哪里
Change Directory,切换目录。
# 进入指定目录
cd /home/xiaoming
# 进入用户主目录(三种方式都可以)
cd
cd ~
cd $HOME
# 进入上一级目录
cd ..
# 进入上上级目录
cd ../..
# 返回上一次所在的目录
cd -
🎯 特殊目录符号
| 符号 | 含义 | 示例 |
|---|---|---|
~ | 当前用户的主目录 | cd ~ → /home/xiaoming |
. | 当前目录 | ./script.sh 运行当前目录的脚本 |
.. | 上一级目录 | cd .. 返回上一级 |
- | 上一次所在目录 | cd - 在两个目录间切换 |
/ | 根目录 | cd / 去最顶层 |
ls - 看看有啥
List,列出目录内容。
# 列出当前目录内容
ls
# 列出指定目录内容
ls /home
# 显示详细信息
ls -l
# 显示隐藏文件(以 . 开头的文件)
ls -a
# 详细信息 + 隐藏文件
ls -la
# 人性化显示文件大小(KB、MB、GB)
ls -lh
# 按时间排序(最新的在最后)
ls -lt
# 按时间排序(最新的在最前)
ls -ltr
ls -l 输出详解:
drwxr-xr-x 2 xiaoming xiaoming 4096 Jan 1 10:00 Documents
│├─┼─┼──│ │ │ │ │ │ │
││ │ │ │ │ │ │ │ │ └── 文件名
││ │ │ │ │ │ │ │ └── 修改时间
││ │ │ │ │ │ │ └── 文件大小
││ │ │ │ │ │ └── 所属组
││ │ │ │ │ └── 所有者
││ │ │ │ └── 硬链接数
││ │ │ └── 其他用户权限
││ │ └── 组权限
││ └── 所有者权限
│└── 文件类型(d=目录,-=普通文件,l=链接)
📄 文件查看命令
cat - 一口气看完
Concatenate,查看文件内容(适合小文件)。
# 查看文件内容
cat file.txt
# 显示行号
cat -n file.txt
# 合并多个文件内容显示
cat file1.txt file2.txt
less - 慢慢看
分页查看文件(适合大文件)。
less file.txt
less 常用操作:
| 按键 | 功能 |
|---|---|
空格 / f | 下一页 |
b | 上一页 |
j / ↓ | 下一行 |
k / ↑ | 上一行 |
g | 跳到开头 |
G | 跳到结尾 |
/关键词 | 搜索(n 下一个,N 上一个) |
q | 退出 |
head/tail - 看头看尾
# 查看文件前 10 行(默认)
head file.txt
# 查看文件前 20 行
head -n 20 file.txt
head -20 file.txt # 简写
# 查看文件后 10 行
tail file.txt
# 查看文件后 20 行
tail -n 20 file.txt
# 实时监控文件变化(看日志神器!)
tail -f /var/log/syslog
💡 tail -f 超有用!
tail -f 可以实时显示文件新增的内容,特别适合查看日志文件。 按 Ctrl + C 退出。
📋 文件操作命令
touch - 创建空文件
# 创建一个空文件
touch newfile.txt
# 创建多个文件
touch file1.txt file2.txt file3.txt
# 如果文件已存在,更新它的时间戳
touch existingfile.txt
mkdir - 创建目录
Make Directory
# 创建单个目录
mkdir mydir
# 创建多级目录(父目录不存在时自动创建)
mkdir -p a/b/c/d
# 创建多个目录
mkdir dir1 dir2 dir3
cp - 复制
Copy
# 复制文件
cp source.txt dest.txt
# 复制文件到目录
cp file.txt /home/xiaoming/
# 复制目录(需要 -r 参数)
cp -r sourcedir destdir
# 复制时保留属性
cp -p file.txt newfile.txt
# 复制时显示进度
cp -v file.txt /tmp/
mv - 移动/重命名
Move
# 移动文件到另一个目录
mv file.txt /home/xiaoming/
# 重命名文件
mv oldname.txt newname.txt
# 移动目录
mv mydir /tmp/
# 移动时询问是否覆盖
mv -i file.txt /tmp/
rm - 删除
Remove
# 删除文件
rm file.txt
# 删除前询问
rm -i file.txt
# 删除目录(需要 -r 参数)
rm -r mydir
# 强制删除(不询问)
rm -f file.txt
# 强制删除目录
rm -rf mydir
⚠️ 危险命令警告
# 永远不要运行这个命令!!!
rm -rf / # 删除整个系统!
rm -rf /* # 同上!
rm -rf ~ # 删除你所有的文件!
Linux 没有回收站,删除就是永久删除! rm -rf 被称为"删库跑路"命令,请谨慎使用!
🔍 搜索命令
find - 查找文件
# 在当前目录查找名为 file.txt 的文件
find . -name "file.txt"
# 在 /home 目录查找所有 .txt 文件
find /home -name "*.txt"
# 忽略大小写查找
find . -iname "*.TXT"
# 查找目录
find . -type d -name "mydir"
# 查找文件
find . -type f -name "*.log"
# 查找大于 100MB 的文件
find . -size +100M
# 查找 7 天内修改的文件
find . -mtime -7
# 查找空文件
find . -empty
grep - 搜索文件内容
Global Regular Expression Print
# 在文件中搜索关键词
grep "hello" file.txt
# 忽略大小写
grep -i "hello" file.txt
# 显示行号
grep -n "hello" file.txt
# 递归搜索目录下所有文件
grep -r "hello" /home/
# 只显示匹配的文件名
grep -l "hello" *.txt
# 显示不匹配的行
grep -v "hello" file.txt
# 统计匹配行数
grep -c "hello" file.txt
which/whereis - 查找命令位置
# 查找命令的位置
which python
# 输出:/usr/bin/python
# 查找命令的二进制、源码、手册位置
whereis python
ℹ️ 系统信息命令
uname - 系统信息
# 显示内核名称
uname
# 输出:Linux
# 显示所有信息
uname -a
df - 磁盘使用情况
Disk Free
# 显示磁盘使用情况
df
# 人性化显示
df -h
# 只显示某个目录所在分区
df -h /home
du - 目录/文件大小
Disk Usage
# 查看当前目录大小
du -sh
# 查看目录下每个子目录的大小
du -sh *
# 查看目录大小,深度为 1
du -h --max-depth=1
free - 内存使用情况
# 查看内存使用情况
free
# 人性化显示
free -h
top/htop - 进程监控
# 查看进程(动态更新)
top
# 更好看的版本(需要安装)
htop
top 常用操作:
| 按键 | 功能 |
|---|---|
q | 退出 |
P | 按 CPU 使用率排序 |
M | 按内存使用率排序 |
k | 杀死进程 |
1 | 显示每个 CPU 核心 |
📖 获取帮助
不记得命令怎么用?这里有几种方法:
1. --help 选项
ls --help
2. man 手册
man ls
# 按 q 退出
3. tldr(推荐!)
tldr 是一个社区驱动的简化版手册,更适合快速查看。
# 安装 tldr
sudo apt install tldr -y
# 更新数据库
tldr --update
# 查看命令用法
tldr tar
📝 本章小结
| 分类 | 命令 | 功能 |
|---|---|---|
| 导航 | pwd | 显示当前目录 |
| 导航 | cd | 切换目录 |
| 导航 | ls | 列出目录内容 |
| 查看 | cat | 查看文件内容 |
| 查看 | less | 分页查看文件 |
| 查看 | head/tail | 查看文件头/尾 |
| 操作 | touch | 创建空文件 |
| 操作 | mkdir | 创建目录 |
| 操作 | cp | 复制 |
| 操作 | mv | 移动/重命名 |
| 操作 | rm | 删除 |
| 搜索 | find | 查找文件 |
| 搜索 | grep | 搜索文件内容 |
| 信息 | df | 磁盘使用情况 |
| 信息 | free | 内存使用情况 |
| 帮助 | man | 查看手册 |
🔥 长安的记忆技巧
不需要死记硬背!
- 多用几次自然就记住了
- 记不住就
--help或man - Tab 键是你最好的朋友
🚀 下一步
学会了基础命令,接下来跟着长安了解 Linux 文件系统 的结构!
—— 编程指南社区 · 长安
