【保姆级教程】别怕Linux!一文带你吃透它的“文件夹”和“核心指令”,从此告别命令行恐惧!

【保姆级教程】别怕Linux!一文带你吃透它的“文件夹”和“核心指令”,从此告别命令行恐惧! 摘要很多刚接触编程、运维或者网络安全的小伙伴一听到Linux就发怵黑乎乎的窗口密密麻麻的命令感觉无从下手。其实Linux就像一个设计极其精良的大楼你只要拿到了它的“楼层导览图”目录结构和“房间使用手册”常用命令就能在里面畅行无阻。今天这篇长文就是你的“导览图”和“手册”二合一从根目录到常用命令CSDN老鸟带你快速构建Linux知识体系。我们不扯虚的直接上干货保证你看完就能实操感觉Linux再也不陌生第一章先拿地图Linux的“大楼布局”目录结构详解想象一下你进入了一座叫“Linux”的大楼。所有东西都井井有条地放在不同的楼层和房间里。/(根目录): 这就是大楼的一楼大厅所有其他目录的起点一切都从这里开始。/bin和/sbin(工具仓库): 好比大楼的“工具间”。bin里放着最常用的工具比如ls(查看文件)、cp(复制)等所有用户都能用。sbin里放着更高级的“管理工具”比如fdisk(分区)、ifconfig(配置网络新系统用ip命令)通常只有管理员(root)才能动用。/etc(配置中心):整座大楼的“控制室”和“档案室”所有系统的配置都在这。想改系统设置先来这里。/etc/passwd: 住户用户花名册。记录了所有用户的基本信息。/etc/shadow:最重要的密码本里面存着加密后的用户密码只有大楼管理员(root)能看。安全提示这个文件是黑客的重点目标/etc/hosts: 本地“通讯录”。你可以在这里手动把网站名字和IP地址对应起来。小技巧可以用来屏蔽某些广告网站/etc/crontab:系统闹钟表。可以设置让系统在特定时间自动执行某些任务。/home和/root(私人房间):/home/你的用户名: 这就是你的私人房间你的文档、下载、桌面都在这里。每个普通用户都有一个。/root: 这是大楼管理员(root)的超级豪华套房普通用户进不去。/tmp和/var/tmp(公共休息区/临时仓库): 一个大家都能随便放东西的公共区域。系统重启后可能会打扫清理。所以临时文件放这里但别放重要东西。/var(动态数据区): 存放经常变的东西比如日志、邮件、网站数据。/var/log/(大事记日志):系统日记本系统干了啥谁登录了出了什么错全记在这里。出了问题第一件事就是来/var/log下翻日志。比如/var/log/auth.log记录所有登录尝试。/proc和/sys(实时监控屏): 这两个不是真正的文件夹而是映射在内存里的“系统实时状态显示屏”。你可以在这里看到每一个正在运行的程序进程的详细信息、CPU内存使用情况等就像看大楼的实时监控一样。第二章核心指令手册在大楼里行走自如拿到了地图现在学学怎么使用工具和下达指令。1. 基本导航与查看pwd:“我在哪儿”​ 显示你当前所在的完整路径。ls:“这屋里有什么”​ 列出当前目录下的文件和文件夹。ls -l:“详细看看”显示权限、所有者、大小、时间等详细信息。ls -la:“看看有没有藏的”显示所有文件包括以.开头的隐藏文件。ls -lh: 文件大小用K、M、G显示更人性化。cd:“我要去...”​ 切换目录。cd /home: 去/home目录。cd ..:“往回走一层”。cd ~或直接cd:“回家”回到你自己的家目录(/home/你的用户名)。cd -:“回到刚才的地方”在两个目录间快速切换。2. 文件与文件夹的“生老病死”mkdir(创建文件夹):mkdir my_folder: 创建名为my_folder的文件夹。mkdir -p project/{src, doc, log}:高级技巧一次性创建嵌套的目录结构project/src,project/doc,project/log。touch(创建空文件/更新文件时间):touch new_file.txt: 如果new_file.txt不存在就创建它如果存在就更新它的修改时间。cp(复制):cp file1.txt file2.txt: 复制file1.txt为file2.txt。cp -r dir1/ dir2/:复制整个文件夹-r参数代表“递归”把里面所有东西都复制过去。mv(移动/重命名):mv old_name.txt new_name.txt:重命名文件。mv file.txt /home/user/documents/:移动文件到另一个目录。rm(删除) - 使用需谨慎:rm file.txt: 删除文件。rm -r folder/:删除整个文件夹及其内容。rm -rf target/:强制删除不问确认。这是著名的危险命令特别是sudo rm -rf /*删除根目录下所有系统就废了。新手千万慎用3. 查看文件内容cat: 快速查看整个小文件内容。cat config.txtmore/less: 查看大文件可以分页。less更强大支持上下翻页和搜索按/然后输入关键词。head/tail:head -n 10 log.txt: 查看文件开头10行。tail -n 20 log.txt: 查看文件末尾20行。tail -f error.log:“实时追踪”​ 一个正在变化的文件比如日志有新内容就会立即显示在屏幕上。监控程序运行的神器4. 权限管理理解“谁能干什么”用ls -l看到的-rwxr-xr--这样的字符串就是权限。第一部分-代表是普通文件d代表目录。后面9位每3位一组分别代表文件所有者(u)、所属组(g)、其他人(o)的权限。r读(4)w写(2)x执行(1)。例如rwxr-xr--用数字表示就是754(7421, 5401, 4400)。chmod(修改权限):数字法最常用chmod 755 script.sh直接把权限设置为rwxr-xr-x。字母法chmod ux file(给所有者增加执行权限)chmod o-w file(移除其他人的写权限)。chown(改变文件主人):sudo chown user1:group1 file.txt: 把文件的所有者改为user1所属组改为group1。5. 查找与搜索“大海捞针”find(按条件找文件):find /home -name *.jpg: 在/home目录下找所有.jpg图片。find . -type f -size 10M: 在当前目录(.)下找大于10M的普通文件(-type f)。grep(在文件里找文字):grep error system.log: 在system.log文件里搜索包含“error”的行。grep -r TODO ~/my_project/:在~/my_project/目录下递归(-r)搜索所有文件中的“TODO”。管道符|绝配ps aux | grep python先列出所有进程(ps aux)然后把结果传递给grep只显示包含“python”的行。瞬间找到所有Python进程6. 系统监控与进程管理ps aux: 快照当前所有进程的详细信息。top或htop:动态、实时查看进程和CPU/内存占用情况。htop界面更友好。kill -9 PID: 强制结束一个进程PID是进程号。先用ps aux | grep 进程名找到PID。df -h: 查看磁盘还有多少空间。free -h: 查看内存用了多少。第三章实战几个高频场景组合拳场景一下载了一个压缩包想解压看看cd ~/Downloads # 进入下载目录 ls -lh *.tar.gz # 看看压缩包多大 tar -xzvf package.tar.gz # 解压 .tar.gz 文件 cd package/ # 进入解压后的目录 ls # 看看里面有什么场景二程序报错了想看看日志tail -n 50 /var/log/nginx/error.log # 先看最后50行 # 如果错误持续开一个终端实时监控 tail -f /var/log/nginx/error.log场景三感觉系统变慢了看看谁在捣乱top # 看看CPU/内存占用最高的进程 # 按 M 按内存排序按 P 按CPU排序 df -h # 再看看是不是磁盘满了四、安全视角的必备指令当个小小“系统保安”学会了基础咱们再拔高一点。了解下面这些命令你不仅能用好Linux还能初步扮演“系统保安”的角色发现一些不寻常的迹象。netstat或ss(网络状态侦查员): 这两个命令是亲兄弟用来看看你的电脑开了哪些“门”端口以及谁在通过这些门通信。netstat -tunlp或ss -tunlp: 这是最常用的组合。它能列出所有正在监听-l​ 的网络端口你的服务并显示是哪个程序-p开的。如果你发现一个从不认识的程序在监听某个奇怪的端口比如6666那就要留个心眼了。netstat -ant或ss -ant: 查看所有的-a网络连接包括正在通信的。可以看看你的电脑正和外面哪些IP“打电话”。lsof(列出打开文件): 这是一个超级侦探能看任何一个进程到底在偷偷干什么。lsof -i :80: 立刻查出是哪个程序占用了80端口通常是Web服务。比netstat更精准。lsof -p 1234: 查看进程号(PID)为1234的进程打开了哪些普通文件、网络连接等等一览无余。find的进阶安全用法 (系统“扫雷器”): 我们之前学了find找文件但它还能用来做简单的安全自查。find / -perm -4000 2/dev/null: 在全盘搜索所有设置了SUID特殊权限的文件。这种文件运行时能有文件所有者的权限比如root如果程序本身有漏洞就可能被利用来“提权”。知道它们在哪是安全基础。find / -type f -name *.php -mtime -1 2/dev/null: 搜索过去1天内被修改过的所有PHP文件。如果你的网站被黑黑客常会篡改网页文件这个命令能帮你快速定位可疑变动。grep的日志分析实战 (日志“过滤器”): 在/var/log的日志海洋里grep是你的最佳钓竿。grep Failed password /var/log/auth.log: 在认证日志里快速过滤出所有密码失败的登录尝试。如果短时间内出现大量来自同一IP的失败记录很可能你的SSH正在被暴力破解。grep -E (Accepted|Failed) /var/log/auth.log | tail -20: 用-E支持扩展正则同时查看最近20条成功Accepted和失败Failed的登录记录对访问情况有个整体了解。crontab(查看定时任务): 电脑的“自动闹钟”。crontab -l: 列出当前用户设定的所有定时任务。cat /etc/crontab: 查看系统级的定时任务。安全提示攻击者喜欢在这里“埋后门”添加一个定时运行的后门程序实现“持久化”控制。偶尔看一眼这里有没有奇怪的任务是个好习惯。一个综合小场景怀疑电脑“中毒”了快速自查三步曲第一步看有没有奇怪的“门”和“电话”ss -tunlp # 看看开了什么不该开的端口 ss -ant | head -20 # 看看有没有可疑的对外连接第二步看有没有“疯跑”的程序top # 盯着看有没有某个进程长期吃掉大量CPU/内存 ps aux --sort-%cpu | head -5 # 静态列出最耗CPU的前5个进程第三步去“日记本”看看有没有异常记录sudo tail -50 /var/log/auth.log # 看看最近有没有奇怪的登录 sudo grep -i fail\|invalid /var/log/auth.log | tail -10 # 看最近的失败登录记住这些命令不是为了让你成为黑客而是让你更了解自己的系统更能保护它。知其然也知其所以然这才是高手之路。结束语看Linux的命令行并不神秘它只是一套高效、精确的工具。你不需要一次性记住所有命令只需要记住最核心的这二三十个并在实践中反复使用肌肉记忆自然形成。给你的建议立即动手打开你的虚拟机或者云服务器对照这篇文章把每一个命令都敲上几遍。从浏览目录开始到创建文件、查看日志、搜索内容。遇到问题就man 命令名查看命令手册或者善用搜索引擎。希望这篇长文能成为你Linux之旅的一块坚实敲门砖。如果有任何问题欢迎在评论区留言讨论下一篇我们可以聊聊如何用Vim高效编辑文本或者如何进行用户和权限的精细化管理。关注我我们下期见