1

質問:

NodeJSであるフォルダを別のフォルダにコピーして、異なるファイルのみを上書きする方法は?


fs-extraの「コピー」方法について:

fs-extraからのcopyメソッドには、同一のファイル (変更されていないファイル) をスキップするオプションがないようです。

オプションはありoverwriteますが、ファイルが同一であってもすべての場合に上書きするか、ファイルが異なっていても上書きしないという選択肢しかありません。

4

3 に答える 3

1

時代遅れの答え。代わりに Reflect の回答を参照してください。


mattijs/node-rsyncjedrichards/ rsyncwrapperが見つかりました。両方ともうまく機能し、Linux/ Windows */etcで実行されています。

簡単で自由に選択できるようにするために、2 番目のオプションを使用することにしました。


(Readme に記載されているその他のオプションがあります)

単一ファイル:

rsync({
    src: "file.txt",
    dest: "tmp/file.txt"
},function (error,stdout,stderr,cmd) {
    if ( error ) {
        // failed
        console.log(error.message);
    } else {
        // success
    }
});

完全なディレクトリ:

rsync({
    src: "src-folder/",
    dest: "dest-folder",
    recursive: true,
    exclude: ["*.txt"]
},function (error,stdout,stderr,cmd) {
    if ( error ) {
        // failed
        console.log(error.message);
    } else {
        // success
    }
});
于 2017-10-18T01:24:08.170 に答える