false - Linux


The Linux false command is a utility that immediately exits with a non-zero status, indicating failure. This command is primarily used in shell scripts or conditional operations to explicitly return a failure status. It is useful in scenarios where the outcome of a condition should deliberately cause a script to terminate or take a specific branch.


The false command has a very simple syntax as it does not accept any arguments or options:


This command can be typed into a shell or used in scripts just as shown.


The false command does not support any options or flags. Its function is singular – to return an exit status of 1 (or greater, typically just 1 in most systems) indicating failure. This simplicity ensures the command’s behavior is consistent and predictable in various contexts.


  • Basic Usage:
    Simply type the command:


    This will return an exit status of 1. To see this exit status, you can echo $? (the exit status of the last command executed):

    echo $?
  • Use in Scripts:
    In a shell script, false can be used to force an error state:

    if false; then
        echo "This will never be printed."
        echo "An error occurred."

Common Issues

There are no complex issues with false as it is straightforward with no options or parameters. However, beginners might misunderstand its purpose, expecting it to perform actions other than returning an error status.


The false command can be effectively used in combination with other commands in scripts or conditional statements:

Example with while loop:

# This loop will not execute because `false` always returns an error status
while false; do
    echo "This line will never be executed."

Combining with logical operators:

false && echo "Won't print this"
false || echo "Error detected"
  • true: The counterpart to false. It exits with a zero status, indicating success. This can be used in similar contexts where a specific, successful exit status is needed.
  • echo $?: Useful for displaying the exit status of the last executed command, often used after false to see its exit code.

For further reading or more detailed information, Linux manual pages (man) on your system can be accessed using man false for the false command or exploring online resources for general shell scripting techniques.