D-BUS???
2. You have to do all communication through argv and parsing stdout which is extremely error-prone.
3. You're almost certainly not going to get proper progress reporting.
4. It can't be interactive (e.g. how do you implement the "This file exists, what do you want to do?" dialog?)
It's so obviously worse I'm surprised you even asked. I'm not sure what "D-BUS??" means but D-Bus mitigates a few of those problems at least.
D-BUS???