Windows命令行下如何在未存在的文件夹中同时创建文件夹与文件?
Windows命令行下如何在未存在的文件夹中同时创建文件夹与文件?
嘿,我来帮你解决这个问题~
你遇到的问题很明确:touch是类Unix系统(比如Linux、macOS)里用来创建空文件的工具,但Windows原生的命令提示符(CMD)或PowerShell并不支持这个命令,所以才会弹出“未被识别”的报错。不过文件夹能创建成功,是因为mkdir -p在部分Windows兼容环境(比如Git Bash)里可以用,原生CMD里对应的参数是/p,同样能自动创建不存在的父目录。
下面给你两种在Windows里实现需求的实用方法:
方法一:用Windows CMD原生命令
如果你习惯用CMD,可以把touch替换成Windows原生的空文件创建命令,分两步执行:
- 用
mkdir创建文件夹(多层目录就加/p参数自动生成父目录) - 用
type nul > 文件路径创建完全空白的文件(不会额外添加换行符)
对应你的需求,完整命令是:
mkdir layout && type nul > layout/layout.ejs
如果是多层目录(比如要创建src/views/layout并生成文件),就改成:
mkdir /p src/views/layout && type nul > src/views/layout/layout.ejs
方法二:用PowerShell一步到位
如果你用PowerShell的话,有个更省心的命令New-Item——它既能创建文件夹也能创建文件,加上-Force参数后,会自动生成不存在的父目录,不用分开执行两条命令:
New-Item -ItemType File -Path layout/layout.ejs -Force
这条命令会直接帮你建好layout文件夹,同时生成layout.ejs空文件,一步搞定所有操作。
另外补充个小建议:如果你经常需要用类Unix命令,可以安装Git Bash或者WSL(Windows Subsystem for Linux),这样就能直接用touch、mkdir -p这些你熟悉的命令啦~
备注:内容来源于stack exchange,提问作者mohamed elnashar
相关产品推荐
相关产品推荐

