✨ 「张有志的Linux开源分享站」欢迎你!✨
🛡️ 探索自由软件的魅力,构建稳定强大的系统!
🙏 感谢每一个阅读、点赞和分享的你!
❤️ 一起为Linux社区添砖加瓦! ❤️
🔗 连接你我,让Linux的力量改变世界!
文章目录
- ✨ 「张有志的Linux开源分享站」欢迎你!✨
- 为什么学习Linux指令?
- 核心指令详解
- A. 文件和目录导航 (Navigation)
- B. 文件和目录管理 (Management)
- C. 查看文件内容 (Viewing Files)
- D. 文本搜索与处理
- E. 系统信息与帮助 (System Info & Help)
- F. (可选) 权限管理 (简单提及)
- G. (可选) 压缩与解压
- 常用技巧与快捷键 (Tips & Tricks)
- 总结 (Conclusion)
- 互动与交流
为什么学习Linux指令?
在当今IT世界,Linux无处不在:
- 服务器操作系统霸主:绝大多数Web服务器、数据库服务器运行在Linux上。
- 开发者的好伙伴:Docker、Kubernetes等容器化技术,以及众多开发工具链都与Linux紧密相关。
- 嵌入式与物联网:安卓系统基于Linux内核,大量智能设备运行着定制化的Linux。
- 提升工作效率:命令行操作在很多场景下比图形界面更快捷、更强大。
- 理解系统底层:学习命令能让你更深入地理解操作系统是如何工作的。
本文的目标读者是 Linux初学者、对命令行感兴趣的开发者 以及任何想要提升Linux操作技能的朋友们。我们将一起探索文件导航、管理、内容查看、系统信息等方面的核心指令。
准备工作:你需要一个可以操作Linux命令行的环境。这可以是:
- 本地安装的Linux发行版(如Ubuntu, CentOS)
- 虚拟机中的Linux系统 (如VMware, VirtualBox)
- Windows Subsystem for Linux (WSL)
- 云服务器 (如阿里云, 腾讯云等)
打开你的终端(Terminal),让我们开始这段奇妙的旅程吧!

核心指令详解
我们将指令按功能进行分类,方便你理解和记忆。
A. 文件和目录导航 (Navigation)
在文件系统中穿梭是基本功。
-
pwd(Print Working Directory): 显示当前工作目录- 作用:告诉你当前正处于哪个目录下。
- 示例:
pwd - 输出可能像这样:
/root/lesson1

-
cd(Change Directory): 切换目录- 作用:改变你当前所在的目录。
- 常用方法:
cd /path/to/directory: 切换到指定绝对路径。cd relative/path: 切换到指定相对路径。cd ~或cd: 切换到当前用户的主目录 (Home Directory)。cd ..: 切换到上一级目录。cd -: 切换到上一次所在的目录。
- 示例:
cd /var/log # 切换到/var/log目录 pwd cd .. # 返回上一级 /var pwd cd ~ # 回到用户主目录 pwd![[图片占位:连续使用,,并配合显示路径变化的截图]](https://i-blog.csdnimg.cn/direct/0cc7a338e5af495195ad59aa65eee9de.png)
-
ls(List Directory Contents): 列出目录内容- 作用:显示当前目录下的文件和子目录列表。
- 常用选项:
-l: 以长格式显示详细信息 (权限、所有者、大小、修改时间等)。-a: 显示所有文件,包括隐藏文件 (以.开头的文件)。-h: 与-l结合使用,以人类可读的格式显示文件大小 (如 KB, MB, GB)。-t: 按修改时间排序,最新的在前面。-R: 递归列出所有子目录的内容。
💡tips:不同选项可自由组合,无顺序要求
- 示例:
ls ls -l ls -a ls -lh ls -lt![[图片占位:执行 命令后,终端显示文件列表的截图,高亮显示权限、大小、文件名等部分]](https://i-blog.csdnimg.cn/direct/8ac2530f330648a7903b2efcb1966166.png)
B. 文件和目录管理 (Management)
创建、复制、移动、删除是日常操作。
-
mkdir(Make Directory): 创建新目录- 作用:创建一个新的目录。
- 常用选项:
-p: 递归创建目录,如果父目录不存在,则一并创建。
- 示例:
mkdir csdn mkdir -p path/to/deep/directory![[图片占位:先,然后,再,清晰展示目录被创建的过程]](https://i-blog.csdnimg.cn/direct/92775f9e8a0f46b0b43f6022ec2f19f5.png)
-
rmdir(Remove Directory): 删除空目录(不常用)- 作用:删除一个空的目录。如果目录非空,则会报错。
- 示例:
rmdir empty_directory
-
touch(Touch Files): 创建空文件或更新文件时间戳- 作用:如果文件不存在,则创建一个空文件;如果文件已存在,则更新其访问和修改时间戳。
- 示例:
touch main.cpp![[图片占位:先,然后,再,展示文件被创建及其初始大小和时间戳]](https://i-blog.csdnimg.cn/direct/d545e049725049a3b6bbc9ca4ee85352.png)
-
cp(Copy Files/Directories): 复制文件或目录- 作用:复制文件或目录。
- 常用选项:
-r或-R: 递归复制,用于复制目录及其内容。-i: 交互式复制,在覆盖前会询问。-v: 显示复制过程。
- 示例:
cp source.txt destination.txt cp source.txt existing_directory/ cp -r source_directory/ destination_directory/![[图片占位:展示将文件复制到,以及将目录复制到的命令和确认结果]](https://i-blog.csdnimg.cn/direct/e4ef0d97fca74a0ba1d9dedd2406fc62.png)
-
mv(Move/Rename Files/Directories): 移动或重命名文件/目录- 作用:移动文件/目录到另一个位置,或者在同一位置重命名文件/目录。
- 常用选项:
-i: 交互式操作,在覆盖前会询问。-v: 显示移动过程。
- 示例:
[图片占位:展示将mv old_name.txt new_name.txt # 重命名 mv file.txt target_directory/ # 移动文件 mv source_dir/ target_dir/ # 移动目录file1.txt重命名为file_renamed.txt,以及将doc.txt移动到archive/目录的命令和ls确认结果]
-
rm(Remove Files/Directories): 删除文件或目录- 作用:删除文件或目录。
- 常用选项:
-r或-R: 递归删除,用于删除目录及其内容。-f: 强制删除,不进行任何提示,忽略不存在的文件,不报错。-i: 交互式删除,在删除前会询问。
- ⚠️警告:
rm -rf是一个非常危险的命令!它会强制递归删除指定目录下所有内容且无法恢复,使用前务必再三确认路径是否正确! - 示例:
rm file_to_delete.txt rm -i another_file.txt # 删除前会询问 rm -r directory_to_delete/ # rm -rf / # 千万不要尝试这个!这是删除整个根目录!![[图片占位:展示删除文件和使用删除目录的命令。可以特别用红色框或文字强调的危险性。]](https://i-blog.csdnimg.cn/direct/f84d459073f740038fc597b811287a28.png)
C. 查看文件内容 (Viewing Files)
快速查看文件内容,无需打开编辑器。
-
cat(Concatenate and Display): 查看文件全部内容- 作用:一次性显示文件的所有内容。适合查看小文件。
- 示例:
cat config.txt![[图片占位:终端中一个简短文本文件(比如3-5行)的输出截图]](https://i-blog.csdnimg.cn/direct/78aede35ce404bc6b60113da9e97600e.png)
-
less(Less is More): 分页查看文件内容- 作用:分页显示文件内容,允许你上下滚动、搜索。比
more更强大。 - 常用操作:
- 空格键/PageDown: 向下翻一页。
- b键/PageUp: 向上翻一页。
/keyword: 向下搜索关键字。?keyword: 向上搜索关键字。n: 跳转到下一个搜索结果。N: 跳转到上一个搜索结果。q: 退出。
- 示例:
less hs.txt![[]](https://i-blog.csdnimg.cn/direct/07e37ee8de91466ba49ee26536d16efa.png)

- 作用:分页显示文件内容,允许你上下滚动、搜索。比
-
more(More): 分页查看文件内容- 作用:与
less类似,但功能较少,通常只能向下翻页。 - 示例:
more /etc/services
- 作用:与
-
head(Head): 查看文件开头几行- 作用:显示文件的开头部分,默认显示前10行。
- 常用选项:
-n <行数>: 指定显示的行数。
- 示例:
head access.log head -n 5 error.log # 显示前5行

-
tail(Tail): 查看文件末尾几行- 作用:显示文件的末尾部分,默认显示后10行。
- 常用选项:
-n <行数>: 指定显示的行数。-f: 动态追踪文件末尾的新增内容,常用于实时查看日志。按Ctrl+C停止。
- 示例:
tail messages.log tail -n 20 system.log # 显示后20行 tail -f application.log # 实时查看日志
D. 文本搜索与处理
在文件中查找信息。
-
grep(Global Regular Expression Print): 文本搜索- 作用:在文件内容中搜索包含指定模式(字符串或正则表达式)的行。
- 常用选项:
-i: 忽略大小写。-n: 显示匹配行的行号。-r或-R: 递归搜索目录下的所有文件。-v: 反向匹配,显示不包含模式的行。-C <数字>: 显示匹配行及其上下文(前后几行)。
- 示例:
grep "error" application.log grep -i "warning" system.log grep -n "user_login" auth.log grep -r "API_KEY" /etc/

-
find(Find Files): 按条件查找文件- 作用:在指定目录及其子目录中根据各种条件查找文件或目录。
- 常用选项:
-name "文件名模式": 按文件名查找 (可使用通配符,如*.txt)。-type f: 查找普通文件。-type d: 查找目录。-user <用户名>: 按文件所有者查找。-mtime -<天数>: 查找N天内修改过的文件。-size +<大小>: 查找大于指定大小的文件 (如+10M表示大于10MB)。-exec <命令> {} \;: 对找到的每个文件执行指定命令。
- 示例:
find /home/user -name "*.log" find . -type f -name "config.*" find /var/log -type f -mtime -7 -name "*.gz" # 查找/var/log下7天内修改过的.gz文件 find . -type f -size +100M -exec ls -lh {} \; # 查找当前目录下大于100M的文件并显示详情

E. 系统信息与帮助 (System Info & Help)
了解系统状态和获取命令帮助。
-
whoami(Who Am I): 显示当前登录用户名- 示例:
whoami
- 示例:
-
date(Date): 显示或设置系统日期和时间- 示例:
date
- 示例:
-
df(Disk Free): 显示磁盘空间使用情况- 常用选项:
-h: 以人类可读格式显示 (GB, MB, KB)。
- 示例:
df -h

- 常用选项:
-
du(Disk Usage): 显示文件或目录磁盘占用大小- 常用选项:
-h: 以人类可读格式显示。-s: 仅显示总大小 (summary)。-a: 显示目录中所有文件和子目录的大小。
- 示例:
du -sh my_project/ # 查看my_project目录总大小 du -ah /var/log # 查看/var/log下所有文件和目录的大小
- 常用选项:
-
free(Free): 显示内存使用情况- 常用选项:
-h: 以人类可读格式显示。-m: 以MB为单位显示。-g: 以GB为单位显示。
- 示例:
free -h

- 常用选项:
-
man(Manual): 查看命令帮助手册- 作用:显示指定命令的详细使用手册。按
q退出。 - 示例:
man ls man grep

- 作用:显示指定命令的详细使用手册。按
-
--help(Help Option): 命令自带的简易帮助- 作用:大部分命令都支持
--help选项,用于显示简要的用法和选项说明。 - 示例:
ls --help cp --help

- 作用:大部分命令都支持
F. (可选) 权限管理 (简单提及)
Linux是一个多用户系统,权限管理非常重要。
chmod(Change Mode): 修改文件/目录权限- 简单介绍:用于改变文件或目录的读®、写(w)、执行(x)权限。权限分为所有者、所属组、其他用户三组。
- 常用数字表示法:
r=4,w=2,x=1755: 所有者rwx,所属组r-x,其他人r-x (常用于目录和可执行文件)644: 所有者rw-,所属组r–,其他人r-- (常用于普通文件)
- 示例:
chmod 755 script.sh chmod 644 config.file

G. (可选) 压缩与解压
打包和压缩文件是常见需求。
tar(Tape Archive): 打包和解包- 常用选项:
-c: 创建归档文件。-x: 提取归档文件。-v: 显示详细过程。-f: 指定归档文件名 (此选项后必须紧跟文件名)。-z: 通过gzip进行压缩/解压缩 (.tar.gz 或 .tgz)。-j: 通过bzip2进行压缩/解压缩 (.tar.bz2)。
- 示例:
# 打包并用gzip压缩 tar -zcvf archive_name.tar.gz directory_to_archive/ # 解压gzip压缩的包 tar -zxvf archive_name.tar.gz # 打包并用bzip2压缩 tar -jcvf archive_name.tar.bz2 directory_to_archive/ # 解压bzip2压缩的包 tar -jxvf archive_name.tar.bz2
- 常用选项:

常用技巧与快捷键 (Tips & Tricks)
这些小技巧能让你在命令行中如虎添翼!
-
Tab 自动补全:输入命令、文件名或路径的前几个字符,然后按
Tab键,Shell会自动补全。如果存在多个匹配项,按两次Tab会列出所有选项。这是最常用也最有用的技巧!
[图片占位:展示使用Tab键自动补全命令或文件名的动态图或截图,比如输入mkd按Tab补全为mkdir] -
历史命令:
- 按 向上/向下箭头键:浏览之前执行过的命令。
history: 显示所有执行过的历史命令列表,带编号。!n: 执行历史记录中编号为n的命令。!!: 执行上一条命令。Ctrl+R: 反向搜索历史命令。输入关键字,Shell会显示最近的匹配命令,继续按Ctrl+R会查找更早的匹配。
[图片占位:展示使用Ctrl+R搜索历史命令的界面,输入部分字符后匹配到命令]
-
管道符
|:将一个命令的输出作为另一个命令的输入。- 示例:
ls -l | grep ".txt"(列出当前目录的详细信息,并从中筛选出包含 “.txt” 的行)
[图片占位:一个简单的管道符使用示例,如ls -lh | grep "my_project"的输出]
- 示例:
-
重定向
>和>>:>: 将命令的输出覆盖写入到文件。如果文件不存在则创建,存在则覆盖。- 示例:
ls -l > file_list.txt
- 示例:
>>: 将命令的输出追加到文件末尾。如果文件不存在则创建。- 示例:
echo "New log entry" >> system.log
[图片占位:展示ls > files.txt后,cat files.txt查看内容;再展示echo "追加内容" >> files.txt后,cat files.txt查看追加后的内容]
- 示例:
-
通配符
*和?:*: 匹配任意多个字符 (包括零个)。- 示例:
ls *.txt(列出所有.txt文件)
- 示例:
?: 匹配任意单个字符。- 示例:
ls file?.log(列出file1.log, fileA.log等)
- 示例:
-
Ctrl+C:终止当前正在运行的命令。 -
Ctrl+D:退出当前Shell会话 (等同于exit命令),或者在等待输入的程序中表示输入结束 (EOF)。 -
Ctrl+L:清空终端屏幕 (等同于clear命令)。 -
Ctrl+A:将光标移动到命令行的开头。 -
Ctrl+E:将光标移动到命令行的末尾。 -
Ctrl+U:删除光标到行首的所有内容。 -
Ctrl+K:删除光标到行尾的所有内容。 -
Ctrl+W:删除光标前的的一个单词。
总结 (Conclusion)
恭喜你!你已经学习了Linux中最核心的一批基本指令。这些指令是你探索和使用Linux系统的基石。
- 回顾:我们学习了文件导航 (
pwd,cd,ls),文件管理 (mkdir,rmdir,touch,cp,mv,rm),内容查看 (cat,less,head,tail),文本搜索 (grep,find),系统信息 (whoami,date,df,du,free) 以及获取帮助 (man,--help) 等。 - 实践出真知:理论学习固然重要,但只有不断练习才能真正掌握它们。尝试在你的Linux环境中实践这些命令,组合使用它们来完成一些小任务。
- 继续探索:Linux命令行的世界远不止这些。还有用户管理、进程管理、网络配置、Shell脚本编程等等更高级的内容等待你去发掘。
希望这篇文章能为你打开Linux命令行的大门。记住,每一次敲击键盘,都是一次新的学习和进步!
互动与交流
- 学习过程中遇到什么问题了吗?
- 你最喜欢或者觉得最实用的Linux命令是哪个?
- 对于Linux初学者,你还有哪些学习建议?
欢迎在评论区留言讨论,分享你的学习心得和经验!如果觉得这篇文章对你有帮助,请不要吝啬你的 👍点赞、🌟收藏、💬评论和🔁转发,这将是我持续创作的巨大动力!也欢迎关注我,获取更多Linux和技术干货!
感谢阅读!Happy Hacking!







