const log = (v) => console.log(JSON.stringify(v))
log({ value: 1 })
log({ value: 2 })
yarn berry で yarn start で実行すると
[root@60303402bf2f tmp]# yarn start
{"value":1}
{"value":2}
余分な出力がありません
しかし npm に置き換えると
[root@60303402bf2f tmp]# npm run start
> tmp@1.0.0 start
> node x.js
{"value":1}
{"value":2}
パッケージ名や 実行されるコマンドが出力されます
デバッグ時にはいいのですが 本番実行時に JSON 以外がログに混ざるのは避けたいので出力してほしくないです
--silent (-s) で消せるようです
[root@60303402bf2f tmp]# npm run start -s
{"value":1}
{"value":2}
この辺も yarn のほうが使いやすいなと思いましたが yarn v1 だとバージョンなどもっと色々出てました
[root@60303402bf2f tmp]# yarn run start
yarn run v1.22.22
$ node x.js
{"value":1}
{"value":2}
Done in 0.11s.
ウェブサーバーなど常駐プロセスの起動ならいらないですが CLI ツールとして使うなら実行時間が表示されるのは少し嬉しいかもしれません