A here document (also called a here-document or a heredoc), is a way of specifying a string literal in shells such as Bash, Windows Power Shell and the Bourne Shell, as well as programming languages such as Perl, PHP, and Ruby. It preserves the line breaks and other whitespace (including indentation) in the text. Some languages allow variable interpolation or even code to be evaluated inside of the string.