I'm trying to run a simple md5sum algorithm, given that I was getting problems before I decided to change my TMP file to a local directory that has enough allocated space (export TMP=some/local/directory. I'm now getting a separate error even after changing the TMP file one more time:


-bash: md5sum/dev/fd/63: No such file or directory

Bash Command:

-bash-4.2$ md5sum<(sort ./directory/text_file.fastq)

1 Answer 1


Add a space after md5sum. The <(...) construct creates a temporary file, in your case /dev/fd/63, and is substitued by the name of that file. Without the space, the temp file name is "glued" directly to md5sum, hence the error.

Reference: "The process list is run asynchronously, and its input or output appears as a filename. This filename is passed as an argument to the current command as the result of the expansion".

But this appears overly complicated to me. Why not sort ./directory/text_file.fastq | md5sum?

  • seems like an easier approach for sure, and will also take less memory on my system I believe. Can I do the following for example with diff? diff <(sort file1) <(sort file2) Apr 8, 2021 at 11:01
  • It won’t make any noticeable difference to memory usage. You can do this with diff, but only with one of its inputs, which makes the overall command harder to read IMO: sort file1 | diff - <(sort file2). Apr 8, 2021 at 11:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .