package
2.0.1+incompatible
Repository: https://github.com/bpfs/defs.git
Documentation: pkg.go.dev

# Functions

DirExists 检查路径是否存在并且是一个目录。 参数: - fs: Afero 文件系统 - path: string 路径 返回值: - bool: 是否存在并且是目录 - error: 错误信息.
Exists 检查文件或目录是否存在。 参数: - fs: Afero 文件系统 - path: string 路径 返回值: - bool: 是否存在 - error: 错误信息.
FileContainsAnyBytes 检查文件是否包含任意一个指定的字节切片 参数: - fs: Afero 文件系统 - filename: string 文件名 - subslices: [][]byte 字节切片数组 返回值: - bool: 是否包含 - error: 错误信息.
FileContainsBytes 检查文件是否包含指定的字节切片 参数: - fs: Afero 文件系统 - filename: string 文件名 - subslice: []byte 字节切片 返回值: - bool: 是否包含 - error: 错误信息.
FullBaseFsPath 获取完整的基础文件系统路径。 参数: - basePathFs: *BasePathFs 基础路径文件系统 - relativePath: string 相对路径 返回值: - string: 完整路径.
GetTempDir 返回默认的临时目录,并带有尾部斜杠 如果 subPath 不为空,则递归创建该路径,权限为 777 (rwx rwx rwx) 参数: - fs: Afero 文件系统 - subPath: string 子路径 返回值: - string: 临时目录路径.
Glob 返回所有与模式匹配的文件名,如果没有匹配的文件则返回 nil。 模式的语法与 Match 中的相同。模式可以描述分层名称,例如 /usr/*/bin/ed (假设路径分隔符是 '/')。 Glob 忽略读取目录时的文件系统错误,如 I/O 错误。 唯一可能返回的错误是 ErrBadPattern,当模式格式错误时。 该函数改编自 http://golang.org/pkg/path/filepath 并使用了该包中的多个内建函数。.
IsDir 检查给定路径是否是目录。 参数: - fs: Afero 文件系统 - path: string 路径 返回值: - bool: 是否是目录 - error: 错误信息.
IsEmpty 检查给定文件或目录是否为空。 参数: - fs: Afero 文件系统 - path: string 路径 返回值: - bool: 是否为空 - error: 错误信息.
ListFileNamesRecursively 列出指定目录及其所有子目录中的文件名 参数: - fs: Afero 文件系统 - rootDir: string 根目录路径 返回值: - []string: 文件名列表 - error: 错误信息.
NeuterAccents 转换带有重音符号的字符为普通形式 参数: - s: string 输入字符串 返回值: - string: 转换后的字符串.
NewBasePathFs 创建一个新的 BasePathFs 参数: - source: Fs 基础文件系统 - path: string 基本路径 返回值: - Fs: 新的 BasePathFs.
NewCacheOnReadFs 创建一个新的 CacheOnReadFs 参数: - base: Fs 基础文件系统 - layer: Fs 缓存层文件系统 - cacheTime: time.Duration 缓存时间 返回值: - Fs: 新的 CacheOnReadFs.
NewCopyOnWriteFs 创建一个新的 CopyOnWriteFs 参数: - base: Afero 基础文件系统 - layer: Afero 覆盖层文件系统 返回值: - Afero: 新的 CopyOnWriteFs.
NewHttpFs 创建一个新的 HttpFs 参数: - source: Afero 源文件系统 返回值: - *HttpFs: 新的 HttpFs.
NewIOFS 创建一个新的 IOFS 参数: - fs: Afero 源文件系统 返回值: - IOFS: 新的 IOFS 对象.
NewMemMapFs 创建一个新的内存映射文件系统 返回值: - Afero: 内存映射文件系统.
NewOsFs 创建一个新的 OsFs 实例 返回值: - Afero: 新的 OsFs 实例.
NewReadOnlyFs 创建一个新的只读文件系统 参数: - source: Fs 实际文件系统 返回值: - Fs: 只读文件系统.
NewRegexpFs 创建一个新的 RegexpFs 参数: - source: Fs 源文件系统 - re: *regexp.Regexp 正则表达式 返回值: - Fs: 过滤后的文件系统.
ReadAll 从 r 读取直到遇到错误或 EOF,并返回读取的数据 参数: - r: io.Reader 读取器 返回值: - []byte: 读取的数据 - error: 错误信息.
ReadDir 读取指定目录的内容并返回排序后的目录条目列表 参数: - fs: Afero 文件系统 - dirname: string 目录名 返回值: - []os.FileInfo: 目录条目列表 - error: 错误信息.
ReadFile 读取指定文件的内容并返回 参数: - fs: Afero 文件系统 - filename: string 文件名 返回值: - []byte: 文件内容 - error: 错误信息.
SafeWriteReader 将读取器的内容安全地写入文件,检查文件是否已存在 参数: - fs: Afero 文件系统 - path: string 文件路径 - r: io.Reader 读取器 返回值: - error: 错误信息.
TempDir 在指定目录中创建一个新的临时目录 参数: - fs: Afero 文件系统 - dir: string 目录路径 - prefix: string 目录名前缀 返回值: - string: 目录路径 - error: 错误信息.
TempFile 在指定目录中创建一个新的临时文件 参数: - fs: Afero 文件系统 - dir: string 目录路径 - pattern: string 文件名模式 返回值: - File: 临时文件对象 - error: 错误信息.
UnicodeSanitize 清理字符串,移除非标准路径字符 参数: - s: string 输入字符串 返回值: - string: 清理后的字符串.
Walk 遍历根目录为 root 的文件树,调用 walkFn 函数处理树中的每个文件或目录,包括根目录。 参数: - fs: Afero 文件系统 - root: string 根目录 - walkFn: filepath.WalkFunc 处理函数 返回值: - error: 错误信息.
WriteFile 将数据写入指定名称的文件 参数: - fs: Afero 文件系统 - filename: string 文件名 - data: []byte 数据 - perm: os.FileMode 文件权限 返回值: - error: 错误信息.
WriteReader 将读取器的内容写入文件 参数: - fs: Afero 文件系统 - path: string 文件路径 - r: io.Reader 读取器 返回值: - error: 错误信息.

# Constants

No description provided by the author
FilePathSeparator 是文件路径分隔符,由 os.Separator 定义。.

# Variables

目标已存在.
常见错误定义.
文件已存在.
文件不存在.
ErrNoReadlink 是当文件系统不支持读取符号链接操作时,会在 os.PathError 中包装的错误。 通过支持 LinkReader 接口表达。.
ErrNoSymlink 是当文件系统不支持符号链接时,会在 os.LinkError 中包装的错误。 通过支持 Linker 接口表达。.
常见错误定义.
常见错误定义.

# Structs

BasePathFile 表示文件系统中的文件.
BasePathFs 限制所有操作到一个给定的路径内。 传递给该文件系统的文件名将在调用基础文件系统之前添加基本路径。 任何在基本路径外的文件名(在 filepath.Clean() 之后)将被视为不存在的文件。 注意,它不会清理返回的错误消息,因此错误可能会暴露真实路径。.
此缓存联合将所有写调用也转发到基础文件系统。 为防止写入基础文件系统,请将其包装在只读过滤器中。 注意:这也会使覆盖层变为只读,要在覆盖层中写入文件,请直接使用覆盖文件系统,而不是通过联合文件系统。.
CopyOnWriteFs 是一个联合文件系统:一个只读的基础文件系统, 在其上可能有一个可写的层。对文件系统的更改只会在覆盖层中进行: 更改基础层中存在但覆盖层中不存在的文件会将文件复制到覆盖层 ("更改"包括调用例如 Chtimes()、Chmod() 和 Chown() 等函数)。 读取目录当前仅通过 Open() 支持,而不是 OpenFile()。.
FromIOFS 采用 io/fs.FS 并将其作为 afero.Fs 使用 注意 io/fs.FS 是只读的,因此所有变更方法将返回 fs.PathError 和 fs.ErrPermission 错误 要存储修改,可以使用 afero.CopyOnWriteFs.
HttpFs 结构体表示一个 HTTP 文件系统.
IOFS 采用 afero.Fs 并适配为标准库的 io/fs.FS 接口.
MemMapFs 是一个内存映射文件系统的实现.
OsFs 是一个使用 os 包提供的函数实现的文件系统接口 有关各方法的详细信息,请查看 os 包的文档 (http://golang.org/pkg/os/)。.
ReadOnlyFs 是一个只读文件系统的实现.
RegexpFile 代表一个正则表达式过滤的文件.
RegexpFs 通过正则表达式过滤文件(不包括目录)。只有匹配给定正则表达式的文件才会被允许, 其他所有文件都会返回 ENOENT 错误("没有这样的文件或目录")。.
UnionFile 实现了 afero.File 接口,当读取目录时(至少在覆盖层中存在)或打开文件进行写入时返回该接口。 对 Readdir() 和 Readdirnames() 的调用将合并基础层和覆盖层中的文件 os.FileInfo / 名称 - 对于同时存在于两个层中的文件,只使用覆盖层中的文件。 当打开文件进行写入(使用正确标志的 Create() / OpenFile())时,操作将在两个层中进行, 从覆盖层开始。覆盖层中的成功读取将按读取的字节数移动基础层中的光标位置。.

# Interfaces

Afero 是文件系统接口 任何模拟或真实的文件系统都应实现此接口.
File 表示文件系统中的一个文件 该接口包含了多种操作文件的方法.
Linker 是 Afero 中的一个可选接口。只有声明支持该接口的文件系统才会实现它。 如果文件系统本身是或委托给 os 文件系统,或者文件系统以其他方式支持 Symlink, 它将调用 Symlink 方法。.
LinkReader 是 Afero 中的一个可选接口。只有声明支持该接口的文件系统才会实现它。 该接口表示支持 Readlink 方法。.
Lstater 是 Afero 中的一个可选接口。只有声明支持该接口的文件系统才会实现它。 如果文件系统本身是或委托给 os 文件系统,它将调用 Lstat。 否则,它将调用 Stat。 除了返回 FileInfo,它还会返回一个布尔值,表示是否调用了 Lstat。.
Symlinker 是 Afero 中的一个可选接口。只有声明支持该接口的文件系统才会实现它。 该接口表示支持以下三个与符号链接相关的接口,这些接口实现了 os 包中的方法: - Lstat - Symlink - Readlink.

# Type aliases

DirsMerger 是 UnionFile 如何将两个目录组合在一起的方法。 它获取来自覆盖层和基础层的 FileInfo 切片,并返回一个单一视图。.