function::warn - Linux


warn is a Linux command used to display a non-fatal warning message to users. It is typically employed to alert users of potential issues or anomalies without causing an error condition or terminating the execution of a script or program.


warn [options] message

Required Arguments

  • message: The warning message to be displayed to the user.


The following options are supported:

  • -w: Specifies the path to a file that will store the warning message.
  • -q: Quiet mode. Suppresses all output except for the warning message.
  • -h: Displays the help message.


Simple example:

warn "Warning: File /tmp/myfile does not exist."

Write warning to a file:

warn -w /tmp/mywarnings.log "Warning: Disk space is low."

Common Issues

Exiting the script:

If a non-zero exit status is desired after displaying the warning, use the exit command explicitly:

warn "Warning: System is overloaded."
exit 1

Unicode support:

If the warning message contains non-ASCII characters, ensure the correct locale is set or use Unicode escape sequences.


With logger:

Log the warning message to the system log:

warn "Warning: Kernel error has occurred." | logger

With mail:

Send the warning message as an email:

warn "Warning: Database connection failed." | mail -s "Database Alert"

Related Commands

  • echo: Displays text on the console.
  • logger: Logs messages to the system log.
  • mail: Sends electronic mail.