229

script1を実行するプロジェクト ディレクトリでコマンドを実行できるようにしたいと考えていますnode script1.js

script1.js同じディレクトリにあるファイルです。コマンドはプロジェクト ディレクトリに固有のものである必要があります。つまり、プロジェクト フォルダーを他の人に送信すると、同じコマンドを実行できるようになります。

これまでのところ、追加しようとしました:

"scripts": {
    "script1": "node script1.js"
}

package.json ファイルに追加しますが、実行しようとするscript1と次の出力が得られます。

zsh: command not found: script1

上記のスクリプトをプロジェクトフォルダーに追加するために必要な手順を知っている人はいますか?

*注意: コマンドを bash プロファイルに追加することはできません (マシン固有のコマンドにすることはできません)。

説明が必要な場合はお知らせください。

4

7 に答える 7

35

以下を作成しましたが、システムで動作しています。これを試してください:

パッケージ.json:

{
  "name": "test app",
  "version": "1.0.0",
  "scripts": {
    "start": "node script1.js"   
  }
}

script1.js:

console.log('testing')

コマンドラインから次のコマンドを実行します。

npm start

追加のユースケース

私のpackage.jsonファイルには通常、次のスクリプトが含まれています。これにより、ファイルのtypescript、sassコンパイル、およびサーバーの実行も監視できます。

 "scripts": {
    "start": "concurrently \"sass --watch ./style/sass:./style/css\" \"npm run tsc:w\" \"npm run lite\" ",    
    "tsc": "tsc",
    "tsc:w": "tsc -w", 
    "lite": "lite-server",
    "typings": "typings",
    "postinstall": "typings install" 
  }
于 2016-04-05T18:01:58.500 に答える
1

例:

  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build --prod",
    "build_c": "ng build --prod && del \"../../server/front-end/*.*\" /s /q & xcopy /s dist \"../../server/front-end\"",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },

ご覧のとおり、スクリプト "build_c" は angular アプリケーションをビルドし、ディレクトリからすべての古いファイルを削除し、最後に結果のビルド ファイルをコピーします。

于 2018-04-30T05:10:44.260 に答える