NOT(1) fish-shell NOT(1)

# [NAME](#NAME)

not - negate the exit status of a job

# [SYNOPSIS](#SYNOPSIS)

```
not COMMAND [OPTIONS ...]
! COMMAND [OPTIONS ...]
```

# [DESCRIPTION](#DESCRIPTION)

**not** negates the exit status of another command. If the exit status is zero, **not** returns 1. Otherwise, **not** returns 0.

Some other shells only support the **!** alias.

The **-h** or **--help** option displays help about using this command.

# [EXAMPLE](#EXAMPLE)

The following code reports an error and exits if no file named spoon can be found.

```
if not test -f spoon


    echo There is no spoon


    exit 1
end
```

# [Copyright](#Copyright)

fish-shell developers

October 26, 2026 4.9

---

Document: not(1) from fish 4.9.3-r4 (Chainguard OS)
Source: https://github.com/fish-shell/fish-shell
