大佬教程收集整理的这篇文章主要介绍了Node.js学习之路07——fs文件系统之对文件或目录执行的其他操作,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
fs.rename
fs.rename(oldPath,newPath,callBACk(err))
rename
方法移动文件或目录,当移动后的路径与原路经为同一路径,则修改该文件的名字const fs = require('fs'); let mkdir = './mkdir'; fs.rename('./one','./two',(err) => { if (err) { console.log(`fs.rename file one to two Failed~`); return false; } console.log(`fs.rename file one to two success~`); })
fs.link
fs.link(oldPath,newPath)
srcPath
参数用于指定需要被创建硬链接的文件的完整路径及文件名dstPath
参数用于指定被创建硬链接的完整路径及文件名,该硬连接与源文件必须位于同一卷中fs.linkSync(srcPath,dstPath)
const fs = require('fs'); let linkFile = 'link.txt'; let linkCopyFile = 'linkCopy.txt'; let data = '创建与删除文件的硬链接'; fs.writeFile('./link.txt',data,(err) => { if (err) { console.log(`write file Failed`); return false; } fs.link(linkFile,linkCopyFile,(err) => { if (err) { console.log(`fs.link ${linkFilE} file Failed~`); return false; } console.log(`fs.link ${linkCopyFilE} file success~`); }); });
fS.Unlink
const fs = require('fs'); let linkFile = 'link.txt'; let linkCopyFile = 'linkCopy.txt'; let data = '创建与删除文件的硬链接'; fS.Unlink(linkCopyFile,(err) => { if (err) { console.log(`fS.Unlink ${linkFilE} file Failed~`); return false; } console.log(`fS.Unlink ${linkCopyFilE} file success~`); })
fs.symlink(srcPath,dstPath,[type],callBACk(err))
type--> file,dir(default,非windows只能使用dir),function(only windows)
fs.symlinkSync(srcPath,[type])
const fs = require('fs'); fs.symlink('./one.js','./two.js','file',(err) =>{ if(err) { console.log(`fs.symlink one.js to two.js Failed~`,err); return false; } console.log(`fs.symlink one.js to two.js success~`) })
readlink
读取符号链接const fs = require('fs'); fs.symlink('./one.js',(err) => { if (err) { console.log(`fs.symlink one.js to two.js Failed~`,err); return false; } console.log(`fs.symlink one.js to two.js success~`); fs.readlink('./two.js',(err,linkString) => { if (err) { console.log(`fs.readlink file Failed~`,err); return false; } console.log(linkString); }) }); /** * fs.symlink one.js to two.js success~ * ./one.js * **/
fs.truncate()
fs.truncate(filename,length,callBACk(err))
fs.truncateSync(filename,length)
one.js
原本内容console.log('this is one.js');
one.js
文件进行截断const fs = require('fs'); fs.truncate('./one.js',10,(err) => { if (err) { console.log(`对文件进行截断操作失败~,${err}`); return false; } fs.stat('./one.js',stats) => { if (err) { console.log(`fs.stat file one.js Failed,${err}`); return false; } console.log(`fs.stat file one.js success~`); console.log(`./one.js size: ${stats.sizE} bytes`); }); }); /** * console.lo * **/
const fs = require('fs'); fs.rmdir('./dirOne',(err) => { if (err) { console.log(`fs.rmdir dir one Failed~,${err}`); return false; } console.log(`fs.rmdir dir one success~`); });
watchFile
方法对文件进行监视,并且在监视到文件被修改时执行某些处理方法fs.watchFile(filename,[options],listener)
options
是一个对象,persistent
属性默认为true
,所以当监视文件后,应用程序没有被立即退出,改为false
就会立即退出。options interval
属性方法设置每隔多少毫秒检查一下该文件有没有发生变化function(curr,prev);
,curr
是fs.Stats
对象,代表被修改之后的当前文件prev
参数值也是一个fs.Stats
对象,代表被修改之前的当前文件const fs = require('fs'); let filename = './one.js' fs.watchFile(filename,{ persistent: true,interval: 100 },(curr,prev) => { if (Date.parse(prev.ctimE) === 0) { console.log(`${filename}文件被创建`); } else if (Date.parse(curr.ctimE) === 0) { console.log(`${filename}文件被删除`); } else if (Date.parse(prev.mtimE) !== Date.parse(curr.mtimE)) { console.log(`${filename}文件被修改`); } else { console.log(`${filename}文件没有被操作`); } if (Date.parse(curr.ctimE) !== 0) { console.log(`${filename}文件的大小为${Curr.sizE}bytes`); } })
fS.UnwatchFile(filename,[listener])
watch
方法,对文件或目录进行监视,并且在监视到文件或目录被修改时执行某些处理fs.watch(filename,[listener])
var watcher = fs.watch('./file01.txt',function (event,fileName) { console.log(event);//事件名 console.log(fileName);//文件名 watcher.close();//关闭监视 });
const fs = require('fs'); let filePath = path.resolve('/root/files/order'); fileDisplay(filePath); function fileDisplay(filePath) { fs.readdir(filePath,files) => { // 这里的files是根目录下的直接子文件和子目录 if (err) { console.error(err); return false; } files.forEach((fileName) => { // 对根目录下的直接子文件和子目录进行遍历 // 利用path的拼接路径方法 // 找到该文件的路径 let fileDir = path.join(filePath,fileName); console.log(fileDir); fs.stat(fileDir,stats) => { // 利用fs的stat方法判断遍历的对象是文件还是目录 if (err) { console.error('get file stats info Failed'); return false; } let isFile = stats.isFile(); let isDir = stats.isDirectory(); if (isFilE) { if (fileDir.indexOf('user.js') > 0) { fs.readFile(fileDir,targetFileData) => { if (targetFileData.indexOf("var id = '") > 0) { console.log('the user.js has id'); } else { console.log('the user.js has not id',fileDir); } }) } } else { fileDisplay(fileDir); } }) }) }) }
以上是大佬教程为你收集整理的Node.js学习之路07——fs文件系统之对文件或目录执行的其他操作全部内容,希望文章能够帮你解决Node.js学习之路07——fs文件系统之对文件或目录执行的其他操作所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。