That sort of solution would be okay for toy examples and really simple cases, but as soon as you get to situations involving real work, the constraints of quoting and escaping things for shell command operations can get really hairy and unworkable. It's the proverbial road to hell, paved with good intentions.
Sure it is! ;-) Putting everything in a shell script on the remote server and running that script, rather than juggling with quotes, escapes and pipes is easier, safer and gives more predictable results...