package copy import ( "io" "os" ) // CopyFile 복사 함수: srcFile → dstFile func RunCopy(srcFile, dstFile string) error { src, err := os.Open(srcFile) if err != nil { return err } defer func(src *os.File) { err := src.Close() if err != nil { } }(src) dst, err := os.Create(dstFile) if err != nil { return err } defer func(dst *os.File) { err := dst.Close() if err != nil { } }(dst) _, err = io.Copy(dst, src) if err != nil { return err } // 원본 파일의 권한을 복사 info, err := os.Stat(srcFile) if err == nil { err := os.Chmod(dstFile, info.Mode()) if err != nil { return err } } return nil }