| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 | 'use strict';/** * * * @author Mai * @date * @version */const fs = require('fs');const path = require('path');var util = require('util');const oss = require('ali-oss');const config = process.argv.splice(2)[0];if (['local', 'uat', 'default'].indexOf(config) < 0) throw `参数错误: ${config}`;const options = require(`../config/config.${config}`)({ baseDir: __dirname + '/app', root: __dirname, name: 'calc' });const ossOption = {    bucket: options.oss.clients.his.bucket,    accessKeyId: options.oss.default.accessKeyId,    accessKeySecret: options.oss.default.accessKeySecret,    endpoint: options.oss.default.endpoint,    timeout: options.oss.default.timeout,};const ossClient = new oss(ossOption);var logPath = path.join(__dirname, 'update_revise.log');var logFile = fs.createWriteStream(logPath, { flags: 'a' });console.log = function() {    logFile.write(util.format.apply(null, arguments) + '\n');    process.stdout.write(util.format.apply(null, arguments) + '\n');};const filepath = ['/etc/calc/files/revise', 'mnt/files/calc/revise'];// const filepath = ['/etc/calc/files/xx'];let iCount = 0;const updatePath = async function (filepath) {    console.log(`UpdatePath: ${filepath}`);    const files = fs.readdirSync(filepath);    for (const f of files) {        const stat = fs.statSync(path.join(filepath, f));        const ossPath = options.hisOssPath + 'revise/' + f;        if (stat.isFile()) await ossClient.put(ossPath, path.join(filepath, f));        console.log(`UpdateOss: ${path.join(filepath, f)} --> ${ossPath}`);        iCount++;    }    console.log('');};const updateAll = async function () {    for (const p of filepath) {        await updatePath(p);    }    console.log(`UpdateOss: ${iCount} files`);};updateAll();
 |