force sips command to write output to stdout

I wrote a script that convert a icns file to png and then encode the png with base64.

I could do it in 2 steps:

  • sips -s format png test.icns -o test.png
  • base64 -w0 test.png

But since test.png is just an intermediary file, I’d like to pipe the output of the 1st command directly to base64, how do I do that?

Note that sips doesn’t seem to support /dev/stdout as the argument of -o.