webgame项目经常要维护更新,先在创建一个批次号,然后上传至更新服务器上然后再分别copy文件至各服务器的一个临时目录,然后更新结束后删除该临时目录。而本地需要根据批次号创建一系统的文件夹目录。之前是先手动创建一个批次号文件夹,然后写一个bat,创建更新批次相应的文件夹。现在如果用node.js写的话,比较简单。系统盘当前登录用户目录放一个update.js文件---好处是直接cmd的时候就是该目录了,节省时间。

 

调用的话就比较简单了。命令行里输入:“node update.js zh(语言包,不同的语言zh/tw/vi分别在不同的目录中)  批次号”

Node.js创建目录实例

 

本来是想尝试在桌面文件夹创建一个bat文件,创建完目录后双击该bat文件就可以打开新创建的更新目录,但发现将utf-8转成ascii时出了问题,懒得去折腾了,先将就着用用了。update.js的代码也比较简单:

'fs');
'buffer');
   3:  
var update_dir = {
'E:/xx/【国内】/',
'E:/xxx/【台湾】/'
   7: };
   8:  
function() {
//获取命令行参数
var args = process.argv.splice(2);
  12:     
if (args.length < 2) {
);
return ;
  16:     }
  17:     
var language = args[0];
var dirPath = update_dir[language];
  20:     
if (!dirPath) {
'请传入正确的语言包 zh/tw');
return ;
  24:     }
  25:  
var updateNo = args[1];
  27:     
'\n');
  29:  
var goalDirPath = dirPath + updateNo;
  31:  
if (fs.existsSync(goalDirPath)) {
'已经创建过此更新目录了');
else {
  35:         fs.mkdirSync(goalDirPath);
  36:  
'更新目录已创建成功\n');
  38:     }
  39:  
//创建Common、HttpRoot、dynConfig
'/Common';
  42:  
if (!fs.existsSync(commonDirPath)) {
  44:         fs.mkdirSync(commonDirPath);
  45:  
'Common目录创建成功');
  47:     }
  48:  
'dynConfig'];
  50:  
var i = 0, len = arr.length; i < len; i++) {
var a = arr[i];
'/' + a;
  54:  
if (!fs.existsSync(b)) {
  56:             fs.mkdirSync(b);
  57:  
'目录创建成功');
  59:         }
  60:     }
  61:     
/* 很遗憾这里未能实现想要的效果,如果路径没有中文倒是没什么问题...
    //在桌面创建直接打开目录的bat
    var desktopDirPath = 'G:/Documents and Settings/xxx/桌面/';
    var quickBatPath = desktopDirPath + 'o_dir.bat';
    if (fs.existsSync(quickBatPath)) {
        fs.unlinkSync(quickBatPath);
        console.log('\n删除“' + quickBatPath + '”文件');
    }
    
    
    fs.writeFileSync(quickBatPath, buffer, 'utf8');
    */
  78: })();
  79:  
  80:  

相关文章:

  • 2021-04-10
  • 2021-12-05
  • 2022-12-23
  • 2022-12-23
  • 2021-06-02
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-11-13
  • 2022-02-01
  • 2022-12-23
  • 2023-03-14
  • 2021-10-18
  • 2022-12-23
  • 2021-06-22
相关资源
相似解决方案