use child_process.exec to execute shell command as non-blocking