Skip to main content

Command Line

On Linux and macOS, Goose v1.5.0 has a known issue that the command line client does not interpret piped scripts (#21243).

To demonstrate the problem, create a test.sql file:

echo "SELECT 42 AS x;" > test.sql

Piping the file to the Goose 1.5.0 CLI client does not run the script:

goose < test.sql
# does not run the script

To work around this, add | cat to the end of the call:

goose < test.sql | cat
┌───────┐
│ x │
│ int32 │
├───────┤
│ 42 │
└───────┘

If you are piping from a file, you can also use the -f argument:

goose -f test.sql
┌───────┐
│ x │
│ int32 │
├───────┤
│ 42 │
└───────┘