当前位置:首页>Linux>【20年架构师总结】新手入门Linux总踩坑 文件和目录管理真的很难吗?看完这篇就会了!

【20年架构师总结】新手入门Linux总踩坑 文件和目录管理真的很难吗?看完这篇就会了!

  • 2026-10-11 08:30:11
【20年架构师总结】新手入门Linux总踩坑 文件和目录管理真的很难吗?看完这篇就会了!
刚打开终端连在哪都不知道,你是不是也这样

第一次打开Linux终端的时候,眼睛都直了。黑糊糊一片,只有个光标在闪,敲个dir还提示command not found,半天才反应过来Linux里列文件是ls不是dir啊。

那时候连自己现在在哪个目录都不知道,直到有人告诉我敲pwd。敲完回车跳出来一行/home/你的用户名,哦,原来现在在这儿啊。

你说也奇怪,Windows里打开我的电脑就能一眼看到所有盘所有文件夹,换到Linux怎么就什么都看不见了呢?其实不是看不见,是我们习惯了可视化点击,一下子换成纯命令行,整个空间感都没建立起来。

我刚学的时候,最懵的就是路径。啥叫绝对路径啥叫相对路径,搞了快一个礼拜才弄明白。从根目录开始写的就是绝对,不管你现在在哪,输进去就能找到地方。从你现在待的目录往下找的就是相对,走错位置就提示找不到文件,当初因为这个错了好多次。

最常用的几个操作,其实没有你想的那么复杂

很多新手上来就被一堆命令吓退,其实平常用到最多的,来回来去也就那几个。

就说ls,谁都知道是列出来当前目录的内容,但是你知道加不同参数出来效果完全不一样吗?我一开始只敲裸ls,出来一堆干巴巴的文件名,什么信息都没有。后来才知道加个-l,就能出来权限、大小、修改时间这些详细信息,再配个-h参数,自动把大小换成K、M、G这种人类能看懂的单位,太贴心了好吗。

就是记参数的时候有点头疼,ls -lha,我背了好久才记住,a是把隐藏文件也显示出来。对哦,Linux里名字开头带个点的就是隐藏文件,默认ls不会显示,很多配置文件都藏在这儿,忘了加a就找不到,急得满头汗都是常事。

再说切换目录的cd,这个简单吧?就cd 你要去的目录名就行,但是有几个快捷键真的能救大命。cd ~直接回你自己的家目录,cd ..回上一级目录,cd -直接跳回你刚才待的那个目录,这些小技巧我当初学的时候没人告诉我,后来自己瞎试才试出来,早知道能少走好多弯路。

创建目录也简单,mkdir就行,但是要一次创建多级嵌套目录呢?直接敲会报错,得加个-p参数,mkdir -p a/b/c/d,一口气就把四层文件夹都建好了,不用你一层一层建,这个知识点好多教程都没提前说,坑死不少新人。

删除的话是rmdir删空目录,要是删文件或者非空的目录,就得用rm了。这里一定要提醒一句,rm -rf /这种命令千万千万不要乱敲,整个系统直接给你删没了,哭都没地方哭去。我身边就有新手好奇试了,直接重装系统,做了好久的作业全没了,教训太惨痛。

复制移动改名字,这些细节新手一定要注意

复制文件是cp,移动文件或者改名字是mv,这俩看着简单,坑一点都不少。

比如你要把一个文件复制到另一个目录里,目标目录如果已经有一个同名文件,默认直接就覆盖了,连个提醒都没有。我刚学的时候,把两个不同的笔记改成同名了,复制过去直接把旧的覆盖了,找了好久都找不回来,后来才知道可以加个-i参数,覆盖之前会问你一声,要不要覆盖,你说yes才会动,这个参数真的是救错手的神器。

mv更有意思,Linux里没有专门的rename命令(当然其实有,但平常改名字都是用mv),你要改文件名,就是mv 旧名字 新名字,直接就改好了。要是你把文件mv到一个已经存在的同名文件那里,同样也是直接覆盖,记得加i参数提醒。

还有创建空文件,最常用的就是touch,敲一下touch 文件名,一个空文件就出来了。一开始我还奇怪为什么叫触摸,摸一下就出来了,还挺形象的对吧。其实touch还能改文件的修改时间,不过平常我们用它就是建空文件,这个功能够用好久了。

查看文件内容,不同场景用不同命令

你建好了文件,要看里面内容怎么办?

小文件直接用cat,一下子全部输出到屏幕上,干干净净。要是文件太大,几十上百行,cat出来翻都翻不赢,那就要用more或者less,翻页看,空格往后翻,b往前翻,q退出,够用了。less比more还好用一点,能往上往下随便滚,more有些版本只能往下翻。

如果你只想看开头几行或者结尾几行呢?那就用head和tail,默认都是十行,head -n 20就是看前20行,tail就是看最后二十行,tail还有个超级好用的参数-f,tail -f 日志文件,你开着这个终端,文件新增内容会实时刷出来,看日志太爽了,调试程序全靠它。

有没有遇到过那种,两个文件内容差不多,想找哪里不一样?用diff啊,diff 文件1 文件2,直接给你标出来哪里不一样,改配置文件对比的时候太好用了。我之前改服务器配置,改坏了忘了原来改成啥了,拿diff一比,一下子就看出来改了哪行,改回去就好了,省了好多事。

Linux目录结构,其实没有那么难记

很多新人刚接触,记不住Linux各个目录都是放啥的,其实不用死记硬背,用多了自然就记住了。

最顶上的/就是根目录,所有东西都在这下面。/home是所有用户的家目录,每个用户的东西都放在自己/home下面的文件夹里,普通用户也只能在这儿瞎折腾,不能随便改别的地方。

/root是超级用户root的家目录,不是放在/home里的,这个要记一下。/etc是放配置文件的地方,所有系统全局的配置都在这儿,比如你装了nginx,配置文件就在/etc/nginx下面,改配置基本都来这儿找。

/bin和/sbin是放可执行命令的,普通用户用的基本在/bin,root用的系统命令在/sbin,现在很多发行版已经把这俩合并到/usr下面了,但是路径还是保留着,不用纠结,知道是放命令的就行。

/dev是放设备文件的,Linux里一切皆文件,你的硬盘、U盘、键盘,都当成一个文件放在这儿,这个概念刚接触有点难理解,用久了就习惯了。/tmp是放临时文件的,重启之后这个目录里的东西会被清掉,所以临时放东西别往这儿放,不然重启就没了。

其实不用逼自己一天就把所有目录都背下来,用到哪个记哪个,用个两三个月,闭着眼睛都知道配置文件该去哪儿找,软件装在哪里,完全不用死记硬背。

踩过的那些坑,给新手提个醒

我学文件管理的时候,踩了好多莫名其妙的坑,今天说出来,你们就别踩了。

第一个就是文件名里不要打空格,你要是非要打,那输入路径的时候就得加引号,或者加转义符,不然系统会把空格当成两个文件,找半天找不到,烦死个人。起名就用下划线或者横杠分开,别给自己找麻烦。

第二个就是不要瞎改权限,刚学的时候看到什么permission denied,就直接chmod 777,啥文件都给满权限,图一时方便,其实太危险了,尤其是服务器上,敏感文件给了777容易被攻击,养成好习惯,该给什么权限给什么权限,别上来就777。

第三个就是删东西之前,先看一眼你站对目录了没有,尤其是用rm -rf的时候,真的要睁大眼睛,我之前就在错的目录删错了项目代码,找了半天版本控制才找回来,吓出一身冷汗。现在我删东西之前,都先pwd看一眼我在哪,再ls看一眼要删的东西对不对,没问题再删,稳一点没坏处。

其实Linux文件和目录管理真的不难,就是一个熟练活,你每天敲一敲,用不了一个礼拜,常用命令就都记住了,那些坑踩过一次也就记住了。别一开始看到一堆命令就怕了,谁都是这么过来的,练得多了,你也能闭着眼睛敲命令,一点不卡壳。

最新文章

随机文章