-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtools.js
53 lines (52 loc) · 1.33 KB
/
tools.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
/**
* Created by xiangwenwen on 16/4/12.
*/
var fs = require('fs');
var path = require('path');
var argv = process.argv;
var args = argv.slice(2);
var env = process.env;
var pwd = env.PWD;
var logInfo = {
LANG:env.LANG,
USER:env.USER
};
var file = {
'model':'bin/temp/model.js',
'view':'bin/temp/view.js'
};
console.log('dir path ---> ',pwd);
var task = args[0];
var target = args[args.length - 1];
if (task && target) {
var all = task.split('.');
var name = all[0];
var type = all[1];
if (!name) {
logInfo.ERROR = 'enter file name';
console.warn(logInfo)
return;
}
if (!type) {
logInfo.ERROR = 'enter file type';
console.warn(logInfo);
return;
}
var tplPath = path.resolve(file[type]);
if (!/\/$/.test(target)) {
target = target + '/'
}
var targetPath = path.resolve(target+name+'.'+type+'.js');
fs.readFile(tplPath,{encoding:'utf8'},function(err,data){
if (err) {throw err}
var e = fs.writeFileSync(targetPath,data,'utf8');
if (!e) {
console.log('create '+type+ ' type file : ' + targetPath);
}else{
throw e;
}
});
}else{
logInfo.ERROR = 'enter file name as .file type and target dir';
console.warn(logInfo)
}