Skip to main content
Module

std/fs/utils.ts

Deno standard library
Go to Latest
File
import * as path from "../path/mod.ts";
/** * Test whether or not `dest` is a sub-directory of `src` * @param src src file path * @param dest dest file path * @param sep path separator */export function isSubdir( src: string, dest: string, sep: string = path.sep): boolean { if (src === dest) { return false; } const srcArray = src.split(sep); const destArray = dest.split(sep); // see: https://github.com/Microsoft/TypeScript/issues/30821 return srcArray.reduce( // @ts-ignore (acc: true, current: string, i: number): boolean => { return acc && destArray[i] === current; }, true );}
export type PathType = "file" | "dir" | "symlink";
/** * Get a human readable file type string. * * @param fileInfo A FileInfo describes a file and is returned by `stat`, * `lstat` */export function getFileInfoType(fileInfo: Deno.FileInfo): PathType | undefined { return fileInfo.isFile ? "file" : fileInfo.isDirectory ? "dir" : fileInfo.isSymlink ? "symlink" : undefined;}