Caro-FS
The FileSystem Operator
Install and Usage
$ npm install caro-fs
var cf = ;cf; // boolean
Index
Dir | File | Path | TypeCheck | Utility
Dir
- isEmptyDir(path... [cb]) - check if empty folder
var r = cf; // booleanvar r2 = cf; // boolean
- readDirCb(path, cb [opt]) - get file-info under dir
cf; // - here is default options
- createDir(path... [cb]) - create folder
var r = cf; // boolean (will try to create /src/lib, /src/lib/coffee)var r2 = cf; // boolean
File
- readFile(path [cb] [opt]) - read file content
// https://nodejs.org/api/fs.html#fs_fs_readfilesync_filename_optionsvar r = cf; // string of data or nullvar r2 = cf; // - here is default options
- writeFile(path, data [cb] [opt]) - write file with data
// https://nodejs.org/api/fs.html#fs_fs_writefilesync_filename_data_optionsvar data = cf;var r = cf; // booleanvar r2 = cf; // - here is default options
- copyFile(path, newPath [cb] [opt]) - copy file
var r = cf;var r2 = cf; // booleanvar r3 = cf; // - here is default options
- getFsSize(path [fixed=1] [unit]) - get file size(bytes), or specific unit (KB/MB.../KiB/Mib....)
var r = cf; // e.g. 439078var r2 = cf; // null var r3 = cf; // 0.1173
- humanFeSize(path [fixed=1] [si=true]) - get and cover file size for easy-reading
// http://en.wikipedia.org/wiki/File_sizevar r = cf; // e.g. '439.1 KB'var r2 = cf; // nullvar r3 = cf; // '9.54 MiB'
Path
- setAbsolutePath(path) - set root absolute path
var r = cf; // '/path/from/root' var r2 = cf; // '/path2/from\root'
- getAbsolutePath(path) - get root absolute path
cf; var r = cf; // '/path/from/root'
- normalizePath(path...) - normalize path
var r = cf; // 'path/seems/not/exists' var r2 = cf; // 'path/exists'
- isFullPath(path...) - check if absolute path
cf; var r = cf; // true var r2 = cf; // false
- getDirPath(path) - get dir-path of file
var r = cf; // '/path/from' var r2 = cf; // '/path/from/root'
- getFileName(path [getFull=true]) - get file name
var r = cf; // 'root' var r2 = cf; // 'caro-fs.js' var r3 = cf; // 'caro'
- getExtendName(path [withDot=true]) - get extend-name of file
var r = cf; // '.js' var r2 = cf; // 'bk'
- coverToFullPath(path) - cover to absolute path
cf; var r = cf; // '/path/from/root/caro-fs.js' var r2 = cf; // '/path/from/root/other/caro-fs.js' var r3 = cf; // '/path/from/root/caro-fs.js'
TypeCheck
- isDir(path... [cb]) - check if directory
var r = cf; // booleanvar r2 = cf; // return false is one of them not directoryvar r3 = cf; // boolean
- isFile(path...) - check if file
var r = cf; // booleanvar r2 = cf; // return false is one of them not filevar r3 = cf; // boolean
- isSymlink(path...) - check if symbolic link
var r = cf; // booleanvar r2 = cf; // return false is one of them not symbolic linkvar r3 = cf; // boolean
- getFileType(path) - get file type
var r = cf; // dir/file/link, or ''
Utility
- setFsTrace(bool) - if console.error when got exception (default=false)
cf;
- getStat(path [type='l']) - get file stat
// https://nodejs.org/api/fs.html#fs_class_fs_stats// 'l' => lstatSync, 'f' => fstatSync, 's' => statSyncvar r = cf;
- exists(path... [cb]) - check file if exist
var r = cf; // booleanvar r2 = cf; // return false is one of them not existsvar r3 = cf; // boolean
- deleteFs(path... [force=false]) - delete file/directory
var r = cf; // booleanvar r2 = cf; // boolean (force-delete if possible for folder)
- renameFs(path, newPath [cb] [force=false]) - rename file/directory
r = cf; // booleanr2 = cf; // boolean (force-create folder for path2 if possible)