---
name: "incus.exec"
section: "1"
platform: "linux"
package: "incus-client"
version: "6.0.4-2+deb13u10"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/incus.exec"
---

# incus.exec(1)

Execute commands in instances

## NAME

incus-exec - Execute commands in instances

## SYNOPSIS

**incus exec \[:\] \[flags\] \[--\]**

## DESCRIPTION

Description:\
   Execute commands in instances

The command is executed directly using exec, so there is no shell and\
   shell patterns (variables, file redirects, ...) won't be understood.\
   If you need a shell environment you need to execute the shell\
   executable, passing the shell commands as arguments, for example:

```
incus exec <instance> -- sh -c "cd /tmp && pwd"
```

Mode defaults to non-interactive, interactive mode is selected if both stdin AND stdout are terminals (stderr is ignored).

## OPTIONS

**--cwd**=""\
 	Directory to run the command in (default /root)\`\`

**-n**, **--disable-stdin**\[=false\]\
 	Disable stdin (reads from /dev/null)

**--env**=\[\]\
 	Environment variable to set (e.g. HOME=/home/foo)\`\`

**-t**, **--force-interactive**\[=false\]\
 	Force pseudo-terminal allocation

**-T**, **--force-noninteractive**\[=false\]\
 	Disable pseudo-terminal allocation

**--group**=0\
 	Group ID to run the command as (default 0)\`\`

**--mode**="auto"\
 	Override the terminal mode (auto, interactive or non-interactive)\`\`

**--user**=0\
 	User ID to run the command as (default 0)\`\`

## OPTIONS INHERITED FROM PARENT COMMANDS

**--debug**\[=false\]\
 	Show all debug messages

**--force-local**\[=false\]\
 	Force using the local unix socket

**-h**, **--help**\[=false\]\
 	Print help

**--project**=""\
 	Override the source project\`\`

**-q**, **--quiet**\[=false\]\
 	Don't show progress information

**--sub-commands**\[=false\]\
 	Use with help or --help to view sub-commands

**-v**, **--verbose**\[=false\]\
 	Show all information messages

**--version**\[=false\]\
 	Print version number

## EXAMPLE

```
  incus exec c1 bash
  	Run the "bash" command in instance "c1"
  incus exec c1 -- ls -lh /
  	Run the "ls -lh /" command in instance "c1"
```

## SEE ALSO

**[incus(1)](/incus/1.md)**

## HISTORY

2-Sep-2026 Auto generated by spf13/cobra
