Tag: 文件

node.jsdynamic的javascript执行性能

我想执行一个任意的用户提供的一段JavaScript代码在文件的每一行。 我创build了一个简单的节点命令行应用程序,作为一个例子,只需取每行并输出它的长度: #!/usr/bin/env node // eachline.js – execute some js per line in a file var fs = require('fs'), readline = require('readline'); vm = require('vm'); var args = process.argv.slice(2); if (args.length < 1) { console.log("Usage: eachline.js FILENAME") process.exit(code=1) } var rd = readline.createInterface({ input: fs.createReadStream(args[0]), output: process.stdout, terminal: false }); var context = vm.createContext({}); // […]

如何使用node.js添加到特定位置的文件?

我有一个文件,我想附加数据到特定的位置上。 我经历了http://nodejs.org/api/fs.html#fs_fs_appendfile_filename_data_options_callback,但我找不到在文件中的特定位置追加数据。 所以任何帮助将不胜感激。谢谢。

node.js – 在创build临时文件之前检查文件是否存在

我想在node.js中创build一个临时文件/目录。 要做到这一点,我正在尝试一个简单的algorithm: 根据pid,时间和随机字符生成文件名 检查文件是否存在 如果是:返回步骤1并重复 如果没有:创build文件并将其返回 下面是问题: fs.exists的node.js文档明确指出不应该使用fs.open ,而应该使用fs.open并捕获一个潜在的错误: http : fs.open /api/fs.html#fs_fs_exists_path_callback 在我的情况下,我没有兴趣打开文件,如果它存在,我严格地试图find一个文件名, 还不存在。 有没有办法我可以去这个不使用fs.exists ? 另外,如果我确实使用fs.exists ,我是否应该担心这种方法将来会被废弃?

如何在节点模块中访问具有相对path的文件?

我在node.js + expressbuild立一个应用程序,我得到一个文件目录错误。 我在/app/lib/tests文件夹中有一个名为ajax.js /app/lib/tests文件。 我的app.js文件在我的根/app目录中。 这里是我的app.js文件,给我麻烦的片段: https.createServer({ key: fs.readFileSync('./security/keys/localhost.key'), cert: fs.readFileSync('./security/keys/localhost.crt') }, app).listen(https_port); 在我的ajax.js文件中,我需要我的app.js文件: var server = require('../../app'); 这个问题是它给我这个错误: Error: ENOENT: no such file or directory, open './security/keys/localhost.key'告诉我文件目录没有正确排队。 如果我更改,我的ajax.js文件工作 Error: ENOENT: no such file or directory, open './security/keys/localhost.key' 至 Error: ENOENT: no such file or directory, open '../../security/keys/localhost.key' 但是,这会打破我的应用程序整体。 有没有一种方法,我可以从app.js文件目录传播到ajax.js? 提前致谢!

在一个Docker镜像中运行两个nodejs应用程序

我怎么能在一个泊坞窗图像中运行两个不同的nodejs应用程序? 两个不同的CMD [ "node", "app.js"]和CMD [ "node", "otherapp.js"]将不起作用,导致Dockerfile中只能有一个CMD指令。

如何启动我从另一个人得到的Docker容器?

我是一个Docker-新手,我从另一个开发人员那里得到了一个包括Dockerfile的项目。 这应该让我的虚拟机继续与这个项目文件夹内的(nodeJS-)项目工作。 Docker已经安装在我的机器上。 我现在怎样启动这个容器? 我读过关于一个命令 sudo docker run -name my_first_instance 但我无法在Dockerfile中find任何容器名称。

NodeJS检测修改的文件

应用程序加载用户的文本文件,每个用户都可以更改。 在应用程序的开始,我想检查是否有任何文件从上次更改。 我认为最有效的方法是计算每个文件的校验和并保存到一个json文件。 在应用程序的开始,我会检查每个文件的校验和,并将其与从json文件中的数据进行比较是否有任何更优化/有效的方式来做到这一点? 或者如何计算文件校验和?

Node.js强制等待函数完成

我在Node.js运行的程序中有一个for循环。 函数是xray包中的x(),我正在使用它来抓取网页中的数据,然后将这些数据写入文件。 这个程序用来刮〜100页是成功的,但我需要刮〜10000页。 当我尝试刮大量的页面时,文件被创build,但它们不包含任何数据。 我相信这个问题的存在是因为for循环没有等到x()返回到下一个迭代之前的数据。 有没有办法使节点等待x()函数完成,然后再继续下一个迭代? //takes in file of urls, 1 on each line, and splits them into an array. //Then scrapes webpages and writes content to a file named for the pmid number that represents the study //split urls into arrays var fs = require('fs'); var array = fs.readFileSync('Desktop/formatted_urls.txt').toString().split("\n"); var Xray = require('x-ray'); […]

你可以改变节点层的CMD – Docker

我是新来的docker工人,所以我不知道如果这是一个更简单的方法来解决它,但。 我想使用节点docker层作为我的基础层,默认情况下,只有docker文件中的CMD被设置为CMD ["npm", "start]有没有办法改变这个初始CMD? 改变原因:我有一个特定的启动脚本来启用生产模式,我会保持我的设置相同。 FROM node:6.6.0 RUN mkdir -p /usr/src/app WORKDIR /usr/src/app ONBUILD ARG NODE_ENV ONBUILD ENV NODE_ENV $NODE_ENV ONBUILD COPY package.json /usr/src/app/ ONBUILD RUN npm install ONBUILD COPY . /usr/src/app CMD [ "npm", "start" ]

加快Docker容器中的NPM安装

我们在版本控制中使用不包含node_modules的标准做法。 但是,当通过CI / CDpipe道时,我们必须在几个地方重新安装NPM依赖项,这使得一切都非常缓慢。 有没有办法以某种方式与DockercachingNPM依赖关系? 我search了Google“docker cache npm dependencies”,2014年的第一个命中产生了一个死链接。 没有什么值得的。 一个解决scheme是在版本控制中包含node_modules,但是我认为这将是一个巨大的错误。 我认为caching依赖关系将是最好的select。 Dockerfile是这样的: FROM node:6 COPY . . # copy all files, but node_modules does not exist ( => gitignored) RUN npm install –no-optional –only=production > /dev/null 2>&1 RUN npm install -g bower > /dev/null 2>&1 RUN bower install –config.interactive=false –allow-root > /dev/null 2>&1 ENTRYPOINT […]