this post was submitted on 20 Dec 2025
25 points (100.0% liked)
Linux
10710 readers
323 users here now
A community for everything relating to the GNU/Linux operating system (except the memes!)
Also, check out:
Original icon base courtesy of lewing@isc.tamu.edu and The GIMP
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
@emotional_soup_88
You could use "-" as argument for file:
find /usr/lib -maxdepth 1 -type l | head -n 1 | file -
which means, 'file' will read its input from the pipe. But that is probably not what you want, because 'file' parses the input and does not accept it as an argument.
You use a pipe to pass the output of a program to another program, in order to do something with that input. Like:
cat unsorted_list.txt | sort -
Thanks! I actually did try that, at which point it said "/dev/stdin ASCII text" or the likes, so it's like the file command literally read the stdin device. Which was extremely intriguing, but not what I wanted. God, I love Linux :D
It's not like it, it's exactly it. The output from find is text,
-means read stdin, so file told you the text in stdin was text. You'll have to see if it takes a list of files as an option, otherwise just use a for loop.