シェルスクリプトを書くために使用できるノードフレームワークまたはノードライブラリがあるかどうか疑問に思っていますか?たとえば、GraphiteとOpenTSDBのRRDツールをインストールするためのbashシェルプログラムがありますが、node.jsを使用したいのですが、可能でしょうか?Node.jsによるシェルスクリプト
おかげ
シェルスクリプトを書くために使用できるノードフレームワークまたはノードライブラリがあるかどうか疑問に思っていますか?たとえば、GraphiteとOpenTSDBのRRDツールをインストールするためのbashシェルプログラムがありますが、node.jsを使用したいのですが、可能でしょうか?Node.jsによるシェルスクリプト
おかげ
を使用したいと思い、他のどんなツールがshelljsを見てください - それは、シェルやGNU coreutilsのような機能をimplemets 。それはシェルスクリプトと非常によく似て見ることができCoffeeScriptのと一緒 :
if not which 'git'
echo 'Sorry, this script requires git'
exit 1
# Copy files to release dir
mkdir '-p', 'out/Release'
cp '-R', 'stuff/*', 'out/Release'
# Replace macros in each .js file
cd 'lib'
for file in ls '*.js'
sed '-i', 'BUILD_VERSION', 'v0.1.2', file
sed '-i', /.*REMOVE_THIS_LINE.*\n/, '', file
sed '-i', /.*REPLACE_LINE_WITH_MACRO.*\n/, cat 'macro.js', file
cd '..'
# Run external tool synchronously
if (exec 'git commit -am "Auto-commit"').code != 0
echo 'Error: Git commit failed'
exit 1
多くはcommander
npm install --save commander
があります最も人気のある間、存在し、コマンドを書くことは非常に簡単です:
#!/usr/bin/env node
var program = require('commander');
program
.version('0.0.1')
.option('-f, --foo', 'enable some foo')
.option('-b, --bar', 'enable some bar')
.option('-B, --baz', 'enable some baz');
program.on('--foo', function(){
console.log('Stuff!');
});
これは私が探している非常にではありません。シェルスクリプトの作成に役立つノードフレームワークを探しています。例:私はこのスクリプトをbash https://github.com/gdbtek/setup-graphite/blob/master/ubuntu.bashで書いています。これをノードで作ってみたいと思います。 Node.jsを使いすぎると、私はbashスクリプティングにとどまるほうがよいでしょう。 –
あなたはツールキットですgruntをチェックアウトする必要があります人々がnode.jsのビルドスクリプトやその他のスクリプトを書くのを手助けするためのものです興味深いことを簡単に行うのに役立つプラグインがたくさんあります。
あなたがBashを知っていれば、私はbashに固執します。
私はJSユニットがプリプロセッサを実行
をチェック等)
私は
*
を使用私はなど、 をサーバーのセットアップし、それらを実行している
**
を使用*
capistrano + gitのかchefまたは何**
bashやあなたがあなたは私がすでにBashを知っていればなぜbashに固執するのかもっと説明してください。 bashを使いこなすことの利点はありますか? –
1.サーバ上でバイナリプログラムを実行することは、非同期のjavascriptではbashにある方がはるかに難しくなります。 2. Grunt/node.jsはまだ1.0より前であり、APIが変更されています(ノードよりはるかに複雑です)3. Bashは多くのシステムで利用できる汎用ツールですが、node.jsとgruntは多くのシステムにインストールされる可能性は低いです。 –
Docker https://www.docker.com/では、このようなことから多くの悩みを解消しています。 (**と*) – Quickredfox
ありがとう@Andrey Sidorov、非常に有望に見える、私はこのlibを試してみるつもりです。 –