\verb in custom command

As already mentioned in comment, verbatim or its short form \verb is a different beast altogether. If you must pass verbatim stuff as arguments, you could consider a fancyvrb work-around.

Using fancyvrb you can save and restore your verbatim commands in the following way:

\usepackage{fancyvrb}% http://ctan.org/pkg/fancyvrb
\DefineShortVerb{\#}% # denotes verbatim opening/closing character
\SaveVerb{VerbA}#(echo 5+4 | bc)#
\SaveVerb{VerbB}#$((5+4))#

This stores (echo 5+4 | bc) as-is in VerbA, and $((5+4)) in VerbB, which can be used (restored) later by means of \UseVerb{VerbA} and \UseVerb{VerbB} respectively. Here is a minimal working example:

enter image description here

\documentclass{article}
\usepackage{fancyvrb}
\newcommand\dd[2]{\item[\texttt{#1}] #2}
\begin{document}
\DefineShortVerb{\#}% # denotes verbatim opening/closing character
\SaveVerb{VerbA}#(echo 5+4 | bc)#
\SaveVerb{VerbB}#$((5+4))#
\begin{description}
  \dd{bc}{text \UseVerb{VerbA} text \UseVerb{VerbB} text}
\end{description}
\end{document}

Edit: A similar work-around exist using the verbdef package. It provides \verbdef{<cmd>}{<verb>} that defines \<cmd> with verbatim <verb> content. The following MWE produces the same output as above:

\documentclass{article}
\usepackage{verbdef}
\newcommand\dd[2]{\item[\texttt{#1}] #2}
\begin{document}
\verbdef\VerbA{(echo 5+4 | bc)}
\verbdef\VerbB{$((5+4))}
\begin{description}
  \dd{bc}{text \VerbA\ text \VerbB\ text}
\end{description}
\end{document}

I'm not sure I fully understand what you're trying to achieve, but I think the simplest solution may be something along the following model. Note that one has to "escape" the dollar sign by prefixing a backslash to it; on the other hand, it's not necessary to introduce verbatim strings explicitly.

\documentclass{article}
\newcommand\dd[2]{\item[\texttt{#1}] #2}
\begin{document}
\begin{description}
\dd{bc}{text \texttt{\$(echo 5+4 $|$ bc)} text \texttt{\$((5+4))} text}
\end{description}
\end{document}

enter image description here


Nowadays you can use the more "robust" \Verb from fvextra package.

Note both \Verb|...| and \Verb{...} is supported (with some restrictions). Also when used as argument, don't use # as delimiters.

\documentclass{article}
\usepackage{fvextra}
\newcommand\dd[2]{\item[\texttt{#1}] #2}

\begin{document}
\begin{description}
  \dd{bc}{text \Verb{$(echo 5+4 | bc)} text \Verb{$((5+4))} text}
\end{description}
\end{document}

enter image description here