I was trying to find all symbolic links in /usr/lib and use file on the first entry in the list, which I delimited with head -n 1.
Why does find /usr/lib -maxdepth 1 -type l | file $(head -n 1) work but find /usr/lib -maxdepth 1 -type l | head -n 1 | file does not?
It complains that I am not using file correctly. Probably because it lacks an argument, but - programmatically/syntactically - why can’t file grab it’s argument from the pipe?


Thanks! So this was more about my lack of understanding of how the file command works… But anyway, this gave me some new stuff to study! Especially the -print0 and -quit options and the xargs command.