You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

17 lines
519 B

import { ScriptLine, define } from "./types"
type RedirectOutputOpts = { output: string }
export type HasRedirectOutput = {
redirectOutput(childCommand: ScriptLine, opts: RedirectOutputOpts): string
}
export const redirectOutput = {
bash: define<HasRedirectOutput>({
redirectOutput: (childCommand, opts) => `${childCommand} > ${opts.output}`,
}),
powershell: define<HasRedirectOutput>({
redirectOutput: (childCommand, opts) =>
`${childCommand} | Out-File ${opts.output} -Encoding UTF8`,
}),
}