Skip to content

import Bunx from "/it/snippets/cli/bunx.mdx";

NOTE

`bunx` è un alias per `bun x`. La CLI `bunx` verrà installata automaticamente quando installi `bun`.

Usa bunx per installare automaticamente ed eseguire pacchetti da npm. È l'equivalente di Bun di npx o yarn dlx.

bash
bunx cowsay "Hello world!"

NOTE

⚡️ **Velocità** — Con i tempi di avvio rapidi di Bun, `bunx` è [circa 100 volte più veloce](https://twitter.com/jarredsumner/status/1606163655527059458) di `npx` per i pacchetti installati localmente.

I pacchetti possono dichiarare eseguibili nel campo "bin" del loro package.json. Questi sono conosciuti come eseguibili di pacchetto o binari di pacchetto.

json
{
  // ... altri campi
  "name": "my-cli",
  "bin": {
    "my-cli": "dist/index.js"
  }
}

Questi eseguibili sono comunemente file JavaScript semplici contrassegnati con una linea shebang per indicare quale programma dovrebbe essere usato per eseguirli. Il file seguente indica che dovrebbe essere eseguito con node.

js
#!/usr/bin/env node

console.log("Hello world!");

Questi eseguibili possono essere eseguiti con bunx,

bash
bunx my-cli

Come con npx, bunx controllerà prima un pacchetto installato localmente, poi ricorrerà all'installazione automatica del pacchetto da npm. I pacchetti installati verranno archiviati nella cache globale di Bun per uso futuro.

Argomenti e flag

Per passare flag e argomenti aggiuntivi da riga di comando all'eseguibile, posizionali dopo il nome dell'eseguibile.

bash
bunx my-cli --foo bar

Shebang

Per impostazione predefinita, Bun rispetta gli shebang. Se un eseguibile è contrassegnato con #!/usr/bin/env node, Bun avvierà un processo node per eseguire il file. Tuttavia, in alcuni casi potrebbe essere desiderabile eseguire gli eseguibili usando il runtime di Bun, anche se l'eseguibile indica diversamente. Per farlo, includi il flag --bun.

bash
bunx --bun my-cli

Il flag --bun deve apparire prima del nome dell'eseguibile. I flag che appaiono dopo il nome vengono passati all'eseguibile.

bash
bunx --bun my-cli # corretto
bunx my-cli --bun # errato

Flag Package

--package <pkg> o -p <pkg> - Esegui il binario da un pacchetto specifico. Utile quando il nome del binario differisce dal nome del pacchetto:

bash
bunx -p renovate renovate-config-validator
bunx --package @angular/cli ng

Per forzare l'uso di bun con uno script, usa uno shebang.

js
#!/usr/bin/env bun

Bun a cura di www.bunjs.com.cn