オプション1)バッシュスクリプト
一つの方法は、あなたがして、簡単なbashスクリプト
に自動化できるコマンド
mv images img # rename images to img
mv javascripts js # rename javascripts to js
mv stylesheets css # rename stylesheets to css
のリストにmvを追加することです私の-express.sh
#!/bin/bash
if [ "$#" == "1" ]; then
express $1
cd $1 && npm install
mv public/images public/img
mv public/javascripts public/js
mv public/stylesheets public/css
npm start
else
echo "usage my-express <project-name>"
fi
とあなたはまた
my-express project_name
オプション2)ノードのスクリプトのように使用される一般的なCLIツールを提供するために、このスクリプトglobalを作成し、それをexecution permissionsを与えたいと思うかもしれません
./my-express.sh project_name
のようにそれを使用
ノードを使用して書き込まれていることを除いて、bashスクリプトと同じ考えです。
#!/usr/bin/env node
var exec = require('child_process').exec;
var projectName = process.argv[2];
var commands = [
'npm install',
'mv public/images public/img',
'mv public/javascripts public/js',
'mv public/stylesheets public/css',
'npm start'
];
if (typeof projectName !== 'string' || projectName.length < 1) {
console.log('Usage: node my-express <project-name>');
} else {
var cmd = ['express ' + projectName,'cd ' + projectName]
.concat(commands)
.join(' && ');
console.log('Executing\n', cmd.replace(/\&\&/g, '&&\n'));
exec(cmd, function(error, stdout, stderr) {
if (error) {
console.error(error);
} else {
console.log(stdout);
}
});
}
はまた、次の内容を同じディレクトリにpackage.json
を作成する必要が
{
"name": "my-express",
"version": "0.0.1",
"bin": {
"my-express": "./my-express.js"
}
}
そして、パス上の場所にスクリプトをリンクnpm install -g
を実行するので、あなたのようにそれを使用することができます他のシェルコマンド
使用
my-express my_project
オプション3)カスタム表現発電
フォークexpress-generatorプロジェクトをビルドし、あなたがそれらを
なるために必要なものに
these 3 linesを変更