Tag: scp

在Ubuntu 9上的Node.js + SCP + stdin.write

我对使用Ubuntu 9(无select)有一个怀疑的乐趣,我安装了Node.js。 我想使用SCP(通过ssh复制文件)。 所以我做了一点节点魔法: scpHandler = require('child_process').spawn('scp',['root@192.168.2.16:/user/MyDocs/smsOut.txt', 'smsOut2.txt']); 然后似乎有一个问题 – ssh需要一个密码,我不能通过authorization_keys忽略这个问题,因为他们碰巧不能在这个特定的设备(Maemo)上工作。 所以我想 – 好的,我只是使用stream写作,它会解决一切: scpHandler.stdout.on('data', function(data){ console.log(data); scpHandler.stdin.write('password'); scpHandler.stdin.write('String.fromCharCode(13)'); }); 它应该反映在scp显示任何消息(并要求input密码后)写入密码,但是,正如你现在可以猜到的一样,出现了一些错误,没有什么HAPPENS。 当sc得到正确的密码后,应该有一些数据显示成功/ unsuccesful转移后,但仍然等待密码…请帮助,任何想法是什么错?

NodeJS:subprocess事件

var spawn = require("child_process").spawn; var child = spawn("scp" , ["-P9022", path_to_file, scp_remote_path]) child.stdout.on("data", function(){ //Automatically type in password }) 我试图scp到一个删除服务器和自动密码input(我知道,我应该使用公共密钥authentication,而不是重点)。 当我运行显示的代码时,我得到正确的密码提示; 无论如何,我可以通过代码检测到提示的存在吗? 在这种情况下,“数据”事件似乎没有被触发。 编辑:不知道这是否重要,但process.stdout.isTTY是真的。 当然,我然后试着像process.stdin一样听可读的事件 process.stdin.on "readable", ()-> buf = process.stdin.read() buf2 = process.stdout.read() console.log "pin", buf, buf2 callback被调用,但是buf和buf2都是空的

安装io.js之后,为什么不能再安全复制呢?

在nvm上安装了io.js,并在CentOS的Linux机器上切换到了io.js后,我切换到了Mac,并且厌倦了将文件复制到它。 在通常的命令“ scp文件根@ ip:/文件夹 ”并input密码,而不是通常的进度后,我得到了 "Now running io.js v1.6.3" 这实际上是正确的版本号,我刚刚安装在Linux机器上。 但是发生了什么? io.js会改变“安全复制”的含义吗? 我尝试使用nvm回到旧的node.js,问题持续存在。 最后,无奈之下,我完全删除了从io.js安装的nvm,最后scp再次运行。 任何人都可以解释这是什么? 我很好奇。

在Nodejs中使用ssh2传输整个目录

我只是想知道,是否完全可以使用node.js中的ssh2模块将目录从unix服务器传输到本地机器。 我已经连接到远程主机,可以读取目录以及传输单个文件,但目录中有28个文件夹,每个文件夹都包含文件和子目录。 我想要做的是从服务器到我的本地机器的主目录的确切副本。 我使用fastGet与单个文件,但传输目录给出: Error: EISDIR, open __dirname/../localdirectory/我认为暗示我不能使用fastGet获取整个目录。 我也尝试使用exec命令来尝试scp它,但我无法解决本地目录的语法: // c is an active connection c.exec('scp filethatexists.extension /../filepath/newname.extension', function(err, stream) { if (err) { console.log("error: " + err); stream.end; }; stream.on('data', function(data, extended) { console.log((extended === 'stderr' ? 'STDERR: ' : 'STDOUT: ') + data); }); stream.on('end', function() { console.log('Stream :: EOF'); }); stream.on('close', function() […]

Node.js通过scp监视传入存档的目录

我有一个任务来创build一个node.js脚本,在目录中侦听新的档案文件到达并处理它们。 我看到我可以用fs.watch做到这一点。 这些文件是tar.gz档案,通过scp到达。 问题是新的档案文件的到达似乎在文件系统中创build了多个(确切的数字是不可预知的)事件。 首先是rename ,然后是一些change事件。 当存档完成传输时,我只需要可靠地触发我的处理逻辑一次。 如何才能做到这一点? 补充笔记: 我无法对发送存档的系统进行更改,只有系统接收它。 我不考虑使用时间来猜测SCP事件已经结束。 这是不可靠的。

我应该在连续的部署设置中使用我的node_modules文件夹吗?

我正在使用codeship.io构build我的第一个连续部署设置,以部署到我的数字海洋液滴。 Codeship的文档build议使用SCP克隆生产文件。 我的问题是:我应该包括在克隆node_modules文件夹? 或者我应该找出一些方法来npm install在液滴npm install需要时?

如何在节点js中使用scp2将文件复制到远程服务器?

我想使用scp2包将节点js中的文件从本地服务器复制到远程服务器。 首先..文件复制或移动到远程服务器后,上传到本地服务器使用multer器。 我的代码: exports.newFileUpload = function(req , res , next){ var storage = multer.diskStorage({ //multers disk storage settings destination: function (req, file, cb) { cb(null, 'uploads/'); }, filename: function (req, file, cb) { var datetimestamp = Date.now(); cb(null, datetimestamp+ '-' +file.originalname); } }); var upload = multer({ storage: storage, limits: { fieldSize: 25 * 1024 […]