Tag: 文件

困惑于node.js文件系统

我用两个步骤使用nodejs的写入文件: 1.首先判断文件是否存在,使用fs.exists函数; 2.然后用fs.writeFile直接写文件; 但现在我已经注意到有更多的function用于写文件,如fs.open或fs.close ,我应该使用这些打开或closures文件,而写作? 另外,我注意到有fs.createReadStream和fs.createWriteStream函数,它们和fs.writeFile和fs.readFile什么fs.readFile ?

Resumable.js不能将文件保存到服务器端目录

我用我的Node.js-express应用程序使用Resumable.js。 我可以达到的地步,我知道文件传输是成功的,因为我可以console.log(req.body),看到下面的… { resumableChunkNumber: '77', resumableChunkSize: '1048576', resumableCurrentChunkSize: '1064195', resumableTotalSize: '80755971', resumableType: '', resumableIdentifier: '80755971-humanfastq', resumableFilename: 'human.fastq', resumableRelativePath: 'human.fastq', resumableTotalChunks: '77' } 在这之后的文件是相当模糊的。 我需要将这个文件保存到我的服务器上的一个目录。 任何关于如何做到这一点的帮助将不胜感激。 谢谢!

用于Node.js的文件存储抽象模块?

在PHP中处理应用程序时,我喜欢使用文件存储抽象层(例如Flysystem )。 这使得在文件应该被保存到的位置(云存储,本地驱动器,ZIP, 等等 )之间切换变得微不足道。 目前我开始在Node.js,所以我想知道是否有类似的模块存在的节点? searchNPM网站给了我很多与文件系统有关的命中,但是没有涉及到这个抽象层次。

在行号nodejs中插入string

我有一个我想要修改的文件。 有没有一种方法可以将string插入到特定行号的文件中? 与NodeJS 我非常感谢你帮助我

Node.JS中的createReadStream

所以我用fs.readFile(),它给了我 “致命错误:CALL_AND_RETRY_LAST分配失败 – 进程内存不足” 由于fs.readFile()在调用callback之前将整个文件加载到内存中,我应该使用fs.createReadStream()吗? 这就是我以前用readFile做的事情: fs.readFile('myfile.json', function (err1, data) { if (err1) { console.error(err1); } else { var myData = JSON.parse(data); //Do some operation on myData here } } 对不起,我对stream式传输很陌生。 下面是正确的方式来做同样的事情,但与stream? var readStream = fs.createReadStream('myfile.json'); readStream.on('end', function () { readStream.close(); var myData = JSON.parse(readStream); //Do some operation on myData here }); 谢谢

如何在Node.js中读取非常大(> 1GB)的tar.gz文件?

我从来没有这样做过,所以这可能是一个非常基本的东西,但我想我会问。 在Node.js中读取非常大的文件的正确方法是什么? 说这个文件太大,一次读不完。 也可以说文件可以以.zip或.tar.gz格式进入。 第一个问题,最好是先解压缩文件并保存到磁盘(我现在用Mac上的Stuffit来做这个),然后使用该文件? 或者你可以直接从压缩的.zip或.tar.gz版本读取IOstream? 我想你需要知道压缩文件中的内容的格式,所以你可能需要解压缩(只是发现这个.tar.gz文件实际上是一个.dat文件)… 那么主要的问题是,如何在Node.js中读取这个大文件? 说这是一个1GB的XML文件,我应该在哪里开始parsing它? (不是,如何parsingXML,但是如果您正在逐行阅读大文件,那么如何parsing需要知道前面行的上下文的XML)。 我已经看过fs.createReadStream ,但是我怕弄乱它…不想炸我的电脑。 只是在正确的方向寻找一些指针。

永远的日志和logrotate

我永远使用启动我的nodeJs服务器,我select日志文件: 永远-l /home/api/log/api_output.log启动server.js 我使用logrotate每天移动日志文件(比如build议这里: NodeJS / Forever归档日志 ),有一天我的目录是这样的: -rw-r – r– 1 root root 0 avril 18 12:00 api_output.log -rw-r – r – 1 root root 95492 avril 18 12:01 api_output.log-20140418 所以,轮换正在工作,但日志消息现在写入api_output.log-20140418,而不是api_output.log 也许有人可以帮助我?

文件path并删除nodejs中的文件

我想删除list_file_to_delete 3个文件,但是我不知道“这里有三个文件path”的path是什么? 我需要for循环/ for / for for函数来删除所有或只需要一个string与3path可能var string = "…a1.jpg, …a2.jpg,…a3.jpg" ? 提前致谢 在delete.js文件中 var list_file_to_delete = ["/images/a1.jpg", "/images/a2.jpg", "/images/a3.jpg"] fs.unlink(path to three files here, function(err) {console.log("success")}) 这是myapp目录 myapp /app /js delete.js /public /images a1.jpg a2.jpg a3.jpg server.js

如何用NodeJs缩小Docker镜像的大小

我通过angular-cli创build了新的Angular2应用程序,并在Docker中运行它。 起初,我在本地机器上启动应用程序: ng new project && cd project && "put my Dockerfile there" && docker build -t my-ui && docker run. 我的Dockerfile FROM node RUN npm install -g angular-cli@v1.0.0-beta.24 && npm cache clean && rm -rf ~/.npm RUN mkdir -p /opt/client-ui/src WORKDIR /opt/client-ui COPY package.json /opt/client-ui/ COPY angular-cli.json /opt/client-ui/ COPY tslint.json /opt/client-ui/ ADD src/ /opt/client-ui/src […]

使用docker run命令将parameter passing给Dockerfile中的CMD

我是Docker的新手,我很难按照自己的意愿设置Docker容器。 我有一个nodejs应用程序可以采取两个参数,当启动。 例如,我可以使用 node server.js 0 dev 要么 node server.js 1 prod 在生产模式和开发模式之间切换,并确定是否应打开群集。 现在我想用参数创builddocker映像来做类似的事情,我目前唯一能做的事情就是调整Dockerfile来创build一个行 CMD [ "node", "server.js", "0", "dev"] 和 docker build -t me/app . build造docker。 然后docker run -p 9000:9000 -d me/app来运行docker。 但是,如果我想切换到prod模式,我需要将Dockerfile CMD更改为 CMD [ "node", "server.js", "1", "prod"] , 我需要杀掉在9000端口听的老人并重build图像。 我希望我能有类似的东西 docker run -p 9000:9000 environment=dev cluster=0 -d me/app 创build一个映像并运行带有“environment”和“cluster”参数的nodejs命令,所以我不需要更改Dockerfile并重新构builddocker。 我怎样才能做到这一点?