import Bunx from "/snippets/cli/bunx.mdx";
NOTE
`bunx` 는 `bun x` 의 별칭입니다. `bun` 을 설치하면 `bunx` CLI 가 자동으로 설치됩니다.bunx 를 사용하여 npm 에서 패키지를 자동으로 설치하고 실행할 수 있습니다. 이는 npx 또는 yarn dlx 와 유사한 Bun 의 기능입니다.
bunx cowsay "Hello world!"NOTE
⚡️ **속도** — Bun 의 빠른 시작 시간으로 인해 `bunx` 는 로컬에 설치된 패키지의 경우 `npx` 보다 [약 100 배 더 빠릅니다](https://twitter.com/jarredsumner/status/1606163655527059458).패키지는 package.json 의 "bin" 필드에 실행 파일을 선언할 수 있습니다. 이를 패키지 실행 파일 또는 패키지 바이너리 라고 합니다.
{
// ... 기타 필드
"name": "my-cli",
"bin": {
"my-cli": "dist/index.js"
}
}이러한 실행 파일은 일반적으로 shebang 라인 이 표시된 일반 JavaScript 파일로, 어떤 프로그램으로 실행해야 하는지를 나타냅니다. 다음 파일은 node 로 실행해야 함을 나타냅니다.
#!/usr/bin/env node
console.log("Hello world!");이러한 실행 파일은 bunx 로 실행할 수 있습니다.
bunx my-clinpx 와 마찬가지로 bunx 는 로컬에 설치된 패키지를 먼저 확인한 후, 패키지가 없으면 npm 에서 자동으로 설치합니다. 설치된 패키지는 향후 사용을 위해 Bun 의 전역 캐시에 저장됩니다.
인자 및 플래그
실행 파일에 추가 명령줄 플래그와 인자를 전달하려면 실행 파일 이름 뒤에 배치합니다.
bunx my-cli --foo barShebang
기본적으로 Bun 은 shebang 을 존중합니다. 실행 파일이 #!/usr/bin/env node 로 표시된 경우 Bun 은 node 프로세스를 시작하여 파일을 실행합니다. 그러나 경우에 따라 실행 파일이 다르게 표시되더라도 Bun 런타임을 사용하여 실행 파일을 실행해야 할 수 있습니다. 이렇게 하려면 --bun 플래그를 포함합니다.
bunx --bun my-cli--bun 플래그는 실행 파일 이름 앞에 와야 합니다. 이름 뒤에 오는 플래그는 실행 파일로 전달됩니다.
bunx --bun my-cli # 좋음
bunx my-cli --bun # 나쁨패키지 플래그
--package <pkg> 또는 -p <pkg> - 특정 패키지의 바이너리 실행. 바이너리 이름이 패키지 이름과 다를 때 유용합니다.
bunx -p renovate renovate-config-validator
bunx --package @angular/cli ng스크립트에서 항상 bun 이 사용되도록 하려면 shebang 을 사용합니다.
#!/usr/bin/env bun