Skip to content

How to get exit codes in piped commands? #317

@Hoshock

Description

@Hoshock

We can get an exit code of single command like this.

const { stdout, code } = await $`ls -l`.noThrow().quiet()

But, how can we get exit codes of piped command?

// `code` always means an exit code of `sort`
// can't retrieve an exit code of `ls -l` anymore
const { stdout, code } = await $`ls -l | sort`.noThrow().quiet()

I follow my workaround now.

const { formerStdout, formerCode } = await $`ls -l`.noThrow().quiet()
const { latterStdout, latterCode } = await $`echo ${stdout} | sort`.noThrow().quiet()

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions