Node.js 在npm脚本中删除rm-r folder_name/*文件夹的内容会得到';没有这样的文件夹或目录';错误

Node.js 在npm脚本中删除rm-r folder_name/*文件夹的内容会得到';没有这样的文件夹或目录';错误,node.js,shell,npm,Node.js,Shell,Npm,当我试图通过运行npm run clean(下面的代码)用npm清理文件夹时,我得到以下错误: rm:无法删除“lib/*”:没有此类文件或目录 在my package.json中,我使用以下脚本: { “脚本”:{ “干净”:“rm-r lib/*”, “显示”:“ls lib/*” } } 我绝对肯定这个文件夹存在。我尝试在lib路径周围使用单引号。我知道glob扩展正在运行:npm运行秀运行得非常好 我不想像建议的那样添加任何依赖项,如rimraf。我也不关心windows支持。我知道我

当我试图通过运行
npm run clean
(下面的代码)用npm清理文件夹时,我得到以下错误:

rm:无法删除“lib/*”:没有此类文件或目录

在my package.json中,我使用以下脚本:

{
“脚本”:{
“干净”:“rm-r lib/*”,
“显示”:“ls lib/*”
}
}
我绝对肯定这个文件夹存在。我尝试在
lib
路径周围使用单引号。我知道glob扩展正在运行:
npm运行秀
运行得非常好

我不想像建议的那样添加任何依赖项,如rimraf。我也不关心windows支持。我知道我可以使用
rm-r库和&mkdir库
,它确实有效。我最感兴趣的是为什么
rm-r lib/*
会给出错误。有人能帮我吗

npm版本:5.5.1


节点版本:8.9.3

你确定你的lib文件夹不是空的吗

rm -r somedir/*
在空目录上运行时出现此错误,因为该目录为空,所以“*”不存在


如果要删除lib文件夹本身,必须键入
rm-r lib

使用rimraf:在Node.js中运行unix命令rm-rf

npm i rimraf -D
在你的剧本中,写下

"scripts": {
    "delete:folder": "rimraf lib/*",
}

可能脚本在另一个目录中运行,那么该文件夹是否存在?尝试
pwd
从脚本run打印路径我实际上已经考虑过了,但是为什么
npm run show
命令会起作用呢?当然,我只是用npm脚本中的
pwd
对它进行了测试,它返回了正确的文件夹。有人提到他知道他可以删除整个文件夹并重新创建
我知道我可以使用rm-r lib和&mkdir lib,这确实有效
,但我想他想知道它失败的原因。说得好,哇。我很确定我试过了,但我错了。非常感谢。我想我必须先检查一下,然后才能删除文件夹。@xxxvodnikxxx:不知怎的,我忘了检查一件非常基本的事情。谢谢你们两位这么想:)