Interview Scripting (Bash, Groovy)

What is process substitution (<(...)), and when is it useful? [Intermediate]

Answer

Process substitution, such as <(command), gives a command a file-like path connected to another command's output. It is useful when a tool expects filenames but the data is produced dynamically.

Technical explanation

It avoids temporary files for comparisons, joins, and tools that take file arguments.

It is a Bash feature and may not be available in POSIX sh.

The shell typically implements it with /dev/fd or named pipes depending on the system.

Hands-on example

diff <(sort old.txt) <(sort new.txt)

comm -12 <(sort desired_users.txt) <(cut -d: -f1 /etc/passwd | sort)

kubectl diff -f <(helm template myapp ./chart)

Preparing for an interview?

Check how well your resume matches the role with our free resume checker— match score, ATS check, and the skills you're missing.

More Scripting (Bash, Groovy) interview questions

← All Scripting (Bash, Groovy) questions