Files
text_shark/internal/runner/fd.go
T
2026-06-03 15:49:54 -05:00

23 lines
578 B
Go

package runner
import (
"bytes"
"os/exec"
)
// FdListFiles runs fd to find files/dirs matching pattern under path.
// extraArgs are passed directly to fd (e.g. "--type", "f").
func FdListFiles(pattern, path string, extraArgs ...string) ([]string, error) {
args := append([]string{pattern, path}, extraArgs...)
cmd := exec.Command("fd", args...)
var out bytes.Buffer
cmd.Stdout = &out
if err := cmd.Run(); err != nil {
if cmd.ProcessState != nil && cmd.ProcessState.ExitCode() == 1 {
return nil, nil
}
return nil, err
}
return splitLines(out.String()), nil
}