Yarn 可以列出所有可用的脚本吗?

Can Yarn list all available scripts?

我的 package.json

上有一些脚本
{
  "name": "my-package",
  "scripts": {
    "build": "babel src -d lib",
    "test": "jest"
  }
}

有没有办法从我的终端命令中列出所有可用的脚本yarn

https://github.com/yarnpkg/yarn/issues/2965

Use yarn run, just like npm npm run

npm run 太慢了,我有时要等近 5 秒才有反应。

我已经使用 cat package.json 多年了,但每次我都必须在终端中滚动屏幕,因为 package.json 太长(超过一个屏幕)。

所以我通过 grepsed 过滤它。
grep 在匹配后打印 50 行 scripts,并使用 sed匹配其他括号,然后退出而不继续打印。

$ grep "scripts" -A 50 ./package.json | sed '/}/ q' # run it on package.json directory

所以我通过 alias scripts="grep 'scripts' -A 20 ./package.json | sed '/}/ q'" 将其附加到 ~/.bashrc

而下一次,我只是 运行 scripts,然后我得到了 package.json 上的所有脚本内容。

酷~

另一个解决方案是jq

jq .scripts package.json

输出示例:

{
  "dev": "webpack-dev-server --mode development",
  "build": "webpack --mode production"
}

您可以将脚本添加到脚本列表中并使用 yarn scripts

  "scripts": {
    "scripts": "jq .scripts package.json"
  }