首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在Windows 10 Powershell上使用npm脚本递归地复制整个目录?

如何在Windows 10 Powershell上使用npm脚本递归地复制整个目录?
EN

Stack Overflow用户
提问于 2020-05-01 08:49:51
回答 1查看 1.4K关注 0票数 3

如何在Windows 10 Powershell上使用npm脚本递归地复制整个目录?

现在我有一棵树:

代码语言:javascript
代码运行次数:0
运行
复制
test
├───1
│       package.json
│
└───2
    └───src
        │   asd.txt
        │
        └───asd
                asd - Copy (2).txt
                asd - Copy.txt
                asd.txt

我想要的是一个脚本,当在dir 1中运行时,它会转到dir 2并递归地将整个dir src复制到dir 1。因此,最终,我将在1中有一个类似的1,就像在2中一样。

当我cd到目录1并运行npm run build:ui (在package.json中定义为

代码语言:javascript
代码运行次数:0
运行
复制
"scripts": {
    "build:ui": "cd ..\\2 && copy src ..\\1"
}

它开始做我想做的事情,但不完全是这样;它将内容从目录2复制到1。问题是它没有复制整个目录及其所有子目录和所有可能的内容,而是直接从2/src/内部复制文件。换句话说,下面是操作后树的样子:

代码语言:javascript
代码运行次数:0
运行
复制
test
├───1
│       asd.txt
│       package.json
│
└───2
    └───src
        │   asd.txt
        │
        └───asd
                asd - Copy (2).txt
                asd - Copy.txt
                asd.txt

所以只有asd.txt文件被复制了。

我尝试过的其他配置没有成功,包括:

代码语言:javascript
代码运行次数:0
运行
复制
"scripts": {
    "build:ui": "cd ..\\2 && copy -r src ..\\1"
}
代码语言:javascript
代码运行次数:0
运行
复制
"scripts": {
    "build:ui": "cd ..\\2 && Copy-Item -Recursive src ..\\1"
}
代码语言:javascript
代码运行次数:0
运行
复制
"scripts": {
    "build:ui": "cd ..\\2 && cp -r src ..\\1"
}

其...none甚至是有效的。

EN

回答 1

Stack Overflow用户

发布于 2020-05-01 12:01:06

对于类似的,我可能使用类似于下面的.的方法。

修改NPM脚本(build:ui)以调用位于与package.json文件相同的dir中的Powershell脚本(build.ui.ps1)。

代码语言:javascript
代码运行次数:0
运行
复制
"scripts": {
    "build:ui": "@powershell -NoProfile -ExecutionPolicy Unrestricted -Command ./build.ui.ps1"
},

使用以下内容创建上述Powershell脚本。

代码语言:javascript
代码运行次数:0
运行
复制
param(
    $srcParentDir = '2',
    $srcDir = 'src',
    $srcDestDir = '1'
)

Set-Location (get-item $PSScriptRoot).parent.FullName
Copy-Item -Path "$srcParentDir\$srcDir" -Destination $srcDestDir -Recurse

运行npm脚本

npm run build:ui

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61539374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档