A \newcommand with a verbatim content environment does not work together (without much ado) and my approach will not work always.
Verbatim environment such as lstlisting need a definite end point where the verbatim content stops and the usual LaTeX (i.e. the expansion) should continue. this can be done with \scantokens{...} to provide the \end{tcblisting} here as the end token.
I've decided to use tcolorbox and its listings options, since a colorbox is apparently involved.
There are many configuration options of tcolorbox, I've restricted to the main feature here (also the usage of specialized listings environments in conjunction with xparse).
The xparse package allows to provide verbatim arguments v which are just taken as status quo.
\documentclass{article}
\usepackage{xcolor}
\usepackage{xparse}
\usepackage[most]{tcolorbox}
\begin{document}
\NewDocumentCommand{\describe}{O{}+m+v+m}{%
\scantokens{%
\begin{tcblisting}{enhanced,
before={\subsection*{#2}},
title={#4},
listing only,
colback={white!80!black},
sharp corners,
colbacktitle={white!60!black},
boxrule=1pt,
left=5pt,
#1}
#3
\end{tcblisting}
}%
}
\describe{My command}{ls -ltr}{Foo}
\describe[colback=green!40!white]{Another command}{pdflatex thisniceexample}{Do you like what you see?}
\end{document}

\lstinlineis what you want. – Manuel Apr 02 '16 at 12:08\verbverbatimandlistingscan not be used inside the argument of another command. – David Carlisle Apr 02 '16 at 12:35