I can figure out why the following process substitution doesn't work:

kompare <( echo one two ) <( echo three four )

Kompare opens, but says that the input files are identical.


kompare probably needs a real file in order to read it more than once, but is not programmed to check whether the supplied arguments behave.

  • Does that technically mean it's a bug in kompare? – Andrew Wood Mar 19 '13 at 15:59
  • @AndrewWood: It depends on what its documentation states. caffeinated.me.uk/kompare seems to only mention "compare two text files", so it is rather a feature request. – choroba Mar 19 '13 at 16:20
  • It may be impossible (or at least less efficient) to produce the smallest possible diff if you restrict the program to making a single, unidirectional pass through each file. zsh, at least, provides the =( cmd ) construct for process substitution when a real file is necessary. – chepner Mar 19 '13 at 22:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.