Skip to main content
Deno 2 is finally here 🎉️
Learn more
Module

std/cli/mod.ts>parseArgs

Deno standard library
Go to Latest
The Standard Library has been moved to JSR. See the blog post for details.
function parseArgs
import { parseArgs } from "https://deno.land/std@0.211.0/cli/mod.ts";

Take a set of command line arguments, optionally with a set of options, and return an object representing the flags found in the passed arguments.

By default, any arguments starting with - or -- are considered boolean flags. If the argument name is followed by an equal sign (=) it is considered a key-value pair. Any arguments which could not be parsed are available in the _ property of the returned object.

By default, the flags module tries to determine the type of all arguments automatically and the return type of the parseArgs method will have an index signature with any as value ({ [x: string]: any }).

If the string, boolean or collect option is set, the return value of the parseArgs method will be fully typed and the index signature of the return type will change to { [x: string]: unknown }.

Any arguments after '--' will not be parsed and will end up in parsedArgs._.

Numeric-looking arguments will be returned as numbers unless options.string or options.boolean is set for that argument name.

Examples

Example 1

import { parseArgs } from "https://deno.land/std@0.211.0/cli/parse_args.ts";
const parsedArgs = parseArgs(Deno.args);

Example 2

import { parseArgs } from "https://deno.land/std@0.211.0/cli/parse_args.ts";
const parsedArgs = parseArgs(["--foo", "--bar=baz", "./quux.txt"]);
// parsedArgs: { foo: true, bar: "baz", _: ["./quux.txt"] }

Type Parameters

optional
TDoubleDash extends boolean | undefined = undefined
optional
TBooleans extends BooleanType = undefined
optional
TStrings extends StringType = undefined
optional
TCollectable extends Collectable = undefined
optional
TNegatable extends Negatable = undefined
optional
TDefaults extends Record<string, unknown> | undefined = undefined
optional
TAliases extends Aliases<TAliasArgNames, TAliasNames> | undefined = undefined
optional
TAliasArgNames extends string = string
optional
TAliasNames extends string = string

Parameters

args: string[]