1
0
mirror of https://github.com/duke-git/lancet.git synced 2026-02-09 23:22:28 +08:00

feat(fileutil): add CopyDir func (#180)

* add fileutil.CopyDir

* remove debug code
This commit is contained in:
yunxuan
2024-02-25 20:25:00 +08:00
committed by GitHub
parent aebab7c944
commit 0eeaa06055
7 changed files with 141 additions and 1 deletions

View File

@@ -26,6 +26,7 @@ import (
- [CreateFile](#CreateFile)
- [CreateDir](#CreateDir)
- [CopyFile](#CopyFile)
- [CopyDir](#CopyDir)
- [CurrentPath](#CurrentPath)
- [FileMode](#FileMode)
- [MiMeType](#MiMeType)
@@ -162,6 +163,34 @@ func main() {
}
```
### <span id="CopyDir">CopyDir</span>
<p>拷贝文件夹到目标路径会递归复制文件夹下所有的文件及文件夹并且访问权限也与源文件夹保持一致。当dstPath存在时会返回error</p>
<b>函数签名:</b>
```go
func CopyDir(srcPath string, dstPath string) error
```
<b>示例:<span style="float:right;display:inline-block;">[运行](https://go.dev/play/p/YAyFTA_UuPb)</span></b>
```go
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/fileutil"
)
func main() {
err := fileutil.CopyFile("./test_src", "./test_dest")
if err != nil {
fmt.Println(err)
}
}
```
### <span id="CurrentPath">CurrentPath</span>
<p>返回当前位置的绝对路径。</p>

View File

@@ -26,6 +26,7 @@ import (
- [CreateFile](#CreateFile)
- [CreateDir](#CreateDir)
- [CopyFile](#CopyFile)
- [CopyDir](#CopyDir)
- [CurrentPath](#CurrentPath)
- [FileMode](#FileMode)
- [MiMeType](#MiMeType)
@@ -162,6 +163,34 @@ func main() {
}
```
### <span id="CopyDir">CopyDir</span>
<p>copy src directory to dst directory, it will copy all files and directories recursively. the access permission will be the same as the source directory. if dstPath exists, it will return an error.</p>
<b>Signature:</b>
```go
func CopyDir(srcPath string, dstPath string) error
```
<b>Example:<span style="float:right;display:inline-block;">[Run](https://go.dev/play/p/YAyFTA_UuPb)</span></b>
```go
package main
import (
"fmt"
"github.com/duke-git/lancet/v2/fileutil"
)
func main() {
err := fileutil.CopyFile("./test_src", "./test_dest")
if err != nil {
fmt.Println(err)
}
}
```
### <span id="CurrentPath">CurrentPath</span>
<p>return current absolute path.</p>