# goawk を Homebrew, apk, apt, MacPorts, Nix でインストール

goawk のインストール経路、実行ファイル、メタデータ、AI エージェント向けセキュリティノートを確認します。

## インストール

```sh
sudo av install brew:goawk
```

追加のインストールコマンド:

### macOS

- Homebrew (100%):

```sh
brew install goawk
```

  証拠: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install goawk
```

  証拠: MacPorts ports tree: lang/goawk/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add goawk
```

  証拠: Alpine Linux edge package indexes: goawk from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install goawk
```

  証拠: Debian stable package indexes: goawk from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- Nix (92%):

```sh
nix profile install nixpkgs#goawk
```

  証拠: nixpkgs package indexes: pkgs/by-name/go/goawk/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## パッケージ情報

- **パッケージキー:** brew:goawk
- **パッケージマネージャ:** Homebrew
- **バージョン:** 1.31.0
- **ソース概要:** POSIX-compliant AWK interpreter written in Go
- **ホームページ:** <https://benhoyt.com/writings/goawk/>
- **リポジトリ:** <https://github.com/benhoyt/goawk>
- **最終更新:** 2026-07-25T20:55:24-04:00
- **生成日時:** 2026-08-03T19:37:03+00:00

## 実行可能ファイル

- goawk (エイリアス)

## インストール挙動

- Bottle: 利用不可

## バージョンと鮮度

- ページ生成日: 2026-08-03
- マネージャ版: 1.31.0
## プロジェクトの歴史と使われ方

GoAWK is Ben Hoyt's POSIX-compatible AWK interpreter written in Go, with command-line and embeddable library use cases. It began as a compact interpreter inspired by The AWK Programming Language and later grew CSV/TSV support, a bytecode virtual machine, code coverage, and an experimental AWK-to-Go compiler.

### プロジェクトの歴史

The repository was created in June 2018, and the author's November 2018 article described GoAWK as an AWK interpreter written in Go, explaining its lexer, parser, resolver, tree-walking interpreter, testing, and performance work. The README says it is feature-complete and tested against the one true AWK and GNU AWK test suites.

GoAWK moved beyond the original tree-walking interpreter in the v1.15 era, when it switched to a bytecode compiler and virtual machine for better performance. In May 2022, the author added native CSV and TSV support, including CSV input/output modes and named fields, while keeping the project POSIX-compatible.

The project continued to add package-nerd features that ordinary awk implementations rarely expose, including embeddable Go APIs, code coverage support in v1.21.0, and the experimental AWKGo compiler.

### 採用の歴史

GoAWK is adopted as both a standalone awk-compatible command and an embeddable Go package. The README notes use in the Redpanda Connect stream processor and by the software team at the library of the University of Antwerp, the latter also sponsoring CSV work.

Distribution through Go modules, release binaries, Homebrew, Debian, MacPorts, Nix, and other package managers makes GoAWK a portable AWK option for users who want POSIX behavior, CSV-aware one-liners, or an AWK engine inside Go programs.

### 使われ方

As a CLI, GoAWK accepts ordinary awk programs and files, can be installed with go install, and supports CSV/TSV processing with -i and -o modes. As a library, Go programs can parse and execute AWK programs directly, reuse parsed programs, and configure interpreter behavior.

### パッケージ好きにとっての重要性

GoAWK matters because it connects two package cultures: the old Unix text-processing tradition of awk one-liners and the modern Go preference for single static binaries and embeddable packages. It is a practical example of reimplementing a standard Unix language with Go's parser, module, testing, and distribution ecosystem.

Its CSV support is especially notable because classic awk field splitting is convenient but not CSV-safe. GoAWK gives package users a drop-in-ish awk command that handles real CSV and TSV data while still aiming at POSIX AWK compatibility.

### タイムライン

- 2018: The GoAWK repository was created and v1.0.0 was tagged.
- 2018: The author published the original GoAWK design and performance article.
- 2022: GoAWK adopted a bytecode compiler and virtual machine around the v1.15 release.
- 2022: GoAWK added native CSV and TSV support.
- 2022: GoAWK v1.21.0 added code coverage support.
- 2025: GoAWK v1.31.0 was tagged with minor fixes and a minimum Go version update.

### Related projects

- GoAWK is related to AWK, BWK awk, GNU Awk, POSIX awk, Redpanda Connect, the Go module ecosystem, and AWKGo, the experimental AWK-to-Go compiler included in the repository.

### ソース

- <https://benhoyt.com/writings/goawk-compiler-vm/>
- <https://benhoyt.com/writings/goawk-coverage/>
- <https://benhoyt.com/writings/goawk-csv/>
- <https://benhoyt.com/writings/goawk/>
- <https://github.com/benhoyt/goawk>
- <https://raw.githubusercontent.com/benhoyt/goawk/master/README.md>


## セキュリティノート

generalized runtime or code generation signal.

- **Geiger リスク:** yellow / 中
- generalized runtime or code generation signal

## 他のパッケージマネージャ記録

- Debian apt - goawk - 1.29.0-1: normalized package name match | Debian stable package indexes: goawk from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | POSIX-compliant AWK interpreter written in Go, with CSV support (program) | https://github.com/benhoyt/goawk
- Debian apt - golang-github-benhoyt-goawk-dev - 1.29.0-1: normalized package name match | Debian stable package indexes: golang-github-benhoyt-goawk-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | POSIX-compliant AWK interpreter written in Go, with CSV support (library) | https://github.com/benhoyt/goawk
- Nix - goawk: normalized package name match | nixpkgs package indexes: pkgs/by-name/go/goawk/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- apk - goawk - 1.30.1-r7: normalized package name match | Alpine Linux edge package indexes: goawk from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | POSIX-compliant AWK interpreter written in Go | https://github.com/benhoyt/goawk
- apk - goawk-doc - 1.30.1-r7: normalized package name match | Alpine Linux edge package indexes: goawk-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | POSIX-compliant AWK interpreter written in Go (documentation) | https://github.com/benhoyt/goawk
- MacPorts - goawk: normalized package name match | MacPorts ports tree: lang/goawk/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/goawk.yml](https://github.com/mxcl/pkgdb/blob/main/combined/goawk.yml)


## ソース

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
