bkgdset - Linux


bkgdset is a command-line tool for setting the background of a terminal with a specified image or pattern. It is a convenient way to customize the appearance of your terminal environment and enhance its visual appeal.


bkgdset [options] <image or pattern>

Required Argument:

  • <image or pattern>: The path to the image file or a valid pattern string (see Patterns section).


  • -c, –center: Center the image or pattern within the terminal window.
  • -f, –fast: Use fast image loading mode. This may result in a smaller image but faster loading times.
  • -m, –margin: Specify the margin (in pixels) around the image or pattern. Default: 0.
  • -n, –no-resize: Do not resize the image or pattern. Display it in its original size.
  • -o, –offset-x, and –offset-y: Adjust the X and Y coordinates of the image or pattern. Default: 0, 0.
  • -p, –patterns: Show a list of available pattern strings.
  • -r, –repeat: Repeat the image or pattern to fill the entire terminal window. Defaut: no repeat.
  • -s, –stretch: Stretch the image or pattern to fit the terminal window.
  • -t, –transparency: Set the transparency level of the backdrop (0-255). Default: 0 (opaque).


Instead of an image file, you can specify a pattern string using the following syntax:

  • pattern: Available patterns are solid, noise, matrix, spheres, drizzle, plasma, clouds, fire, volcanic, and wood.
  • color: Background color in hex code or a named color.
  • fgcolor: Foreground color for patterns that support it.


  • Set the background image to an image file:
    bkgdset /path/to/image.png
  • Center an image and set a margin:
    bkgdset -c -m 10 /path/to/image.jpg
  • Display a solid red background with a green foreground:
    bkgdset solid:#ff0000,#00ff00
  • Repeat a pattern indefinitely:
    bkgdset -r clouds:#000000,#ffffff

Common Issues

  • Image is not displayed: Ensure that the image file exists and is accessible.
  • Pattern is not recognized: Check the spelling of the pattern string and the supplied colors.
  • Terminal freezes: Try using the -f flag to load the image faster.


bkgdset can be integrated into shell scripts or automated workflows to dynamically change the terminal background based on certain events or conditions. For example:

if [ $THEME = "light" ]; then
  bkgdset light_bg.png
elif [ $THEME = "dark" ]; then
  bkgdset dark_bg.png

Related Commands

  • xrdb: Set X resources for terminal customization.
  • setterm: Modify the terminal’s appearance and behavior.
  • bash: The shell used on many Linux systems.