linux如何创建目录-终端输入指令即可快速生成文件夹
平时上手Linux服务器做基础配置,最先接触也最容易粗心出错的就是linux如何创建目录,我刚入行做运维实习那会,总觉得这是小儿科的操作,压根没放在心上,结果第一次独立部署测试项目,就卡在了新建项目目录这一步,硬生生耽误了半个多小时。
当时的需求很简单,要在根目录下的usr文件夹里,新建一个专属的项目文件夹,还要嵌套两层子目录,用来分类存放代码和日志文件。那时候只模糊记得创建目录用mkdir命令,直接打开终端敲了mkdir usr/project/log,回车之后屏幕直接跳出报错提示,英文提示大概是路径不存在,瞬间就懵了。
完全没搞懂问题出在哪。
反复敲了好几次同样的指令,每次都是一模一样的报错,当时下意识以为是文件夹名称不能用英文小写,又试着换成大写、加下划线,甚至修改了简单的单目录名称,结果还是无法创建成功。那会对Linux的路径逻辑完全没概念,只知道死记硬背命令,根本不知道mkdir默认只能创建单级目录,没办法直接生成多层嵌套的文件夹结构,这也是大多数新手最容易忽略的点,总以为一条命令就能搞定所有目录创建场景,完全没区分普通目录和嵌套目录的操作差异。
折腾好久才搞明白,想要一次性创建多级目录,必须在mkdir后面加上-p参数,这个参数的作用就是递归创建不存在的父目录,不用手动一层层新建文件夹。当时抱着试一试的心态,输入了mkdir -p /usr/project/log,敲下回车之后,终端没有任何报错,光标直接跳转下一行,这就代表目录顺利的创建完成了。
其实单纯创建单个目录特别简单,不需要任何参数,直接mkdir加文件夹名称就行。比如想要在当前位置新建一个test文件夹,只需要输入mkdir test,回车就能生成,零门槛就能操作。我之前就是太轻敌,觉得基础操作不用深究,才连单层和多级目录的区别都没分清,白白浪费了不少调试的时间。
后面又随手测试了几个不同的场景,在普通用户权限下创建自定义目录完全没问题,但是如果要在系统根目录、usr、etc这类系统核心文件夹下创建目录,偶尔会提示权限不足,这时候只需要在命令最前面加上sudo,输入本机登录密码之后,就能正常执行创建操作,这个小细节是实操里很实用的补充。
试过几次之后,慢慢摸清了规律,日常自用、普通文件存放,直接用基础mkdir命令就行,需要搭建项目层级结构、创建多层嵌套文件夹时,必带-p参数,不用繁琐的逐层创建,效率会高很多。
当晚关电脑前,把mkdir的常用用法简单记在了桌面的记事本里,没有写复杂的注释,就只写了单层和多级创建的两行指令。