Determine If Shell Input is Coming From the Terminal or From a Pipe

Written By
MF
Mitch Frazier
Feb 13, 2010

“Working on a little script the other day I had the need to
determine if the input to the script was coming from a pipe or from
the terminal. Seems like a simple enough thing to determine but
nothing jumped immediately to mind and a quick internet search
didn’t help much either. After a bit of pondering I came up with
two solutions: the stat command and using information from the proc
file system.

“The first solution uses the stat command to determine what type
of file is connected to standard input. First we find out what is
connected to standard input:”


Complete Story

MF

Mitch Frazier

Linux Today Logo

LinuxToday is a trusted, contributor-driven news resource supporting all types of Linux users. Our thriving international community engages with us through social media and frequent content contributions aimed at solving problems ranging from personal computing to enterprise-level IT operations. LinuxToday serves as a home for a community that struggles to find comparable information elsewhere on the web.

Property of TechnologyAdvice. © 2026 TechnologyAdvice. All Rights Reserved

Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.