I am looking for a way to send the resulting file from one command to another, So I don't have to save a copy on disk in between. For example, if I have rared files on disk and want to open them I would like to be able to run something like:unrar x file.rar | kplayerunrar x file.rar | gpg -cgpg file.gpg | kplayer I am sure you see what I am looking for. I have tried to get unrar to send to standard output with -p but it will just send it to screen even when I think it should be connected with a | to kplayer. I suppose that is because kplayer can't get it's data from stdin. But is there a way to pass files without saving them on disk? Is the best I can get to create a filesystem in memory and use that, I don't like the idea to reserve that much memory though. 
Can I pass files between commands?
linux;shell;command line