De acordo com o manual BASH:
-p file
True if file exists and is a named pipe (FIFO).
Então:
if [[ -p /tmp/my_fifo ]]; then
# commands to execute
fi
A pergunta tem a tag bash . No contexto, o uso de [[
e ]]
é específico para BASH. (Tangencialmente, [[
e ]]
também funcionam com o zsh e o shell Korn.) Consulte BashFAQ / 031 . Scripts portáteis devem ser escritos com [
e ]
, que funcionam em todos os shells POSIX.