> On Oct 17, 2020, at 7:35 PM, Eduardo Bustamante <dual...@gmail.com> wrote: > > <(cat file) and $(cat file) are not equivalent constructs. The former will > expand to a file name (e.g. "/dev/fd/63"), whereas the latter will expand > to the contents of the file.
If you want terms you can look up, $(cat file) and $(< file) are *command substitutions*, while <(cat file) is a *process substitution*. $ printf 'FILE CONTENTS' >tmp $ printf '|%s|\n' "$(cat tmp)" |FILE CONTENTS| $ printf '|%s|\n' "$(< tmp)" |FILE CONTENTS| $ printf '|%s|\n' "<(cat tmp)" |<(cat tmp)| $ printf '|%s|\n' <(cat tmp) |/dev/fd/63| -- vq