use subprocess PIPE