Why not just have both?
Lets take apache httpd.conf for example.
Someone who's good at CLI can whack that open in vi/emacs, jump down to the line they want and change an option, or write a script that appends their configuration (eg. adding a vhost) automatically then roll it out across multiple servers.
And then, for people who aren't doing a specific change and need to be able to see what's going on (eg. first time setup, where you're going through a lot of the options as you go anyway) can have the GUI open, where the GUI is just a pretty front end for the text based config underneath.
Cisco routers work this way, they've got the web based gui that you can set things up in, or you can work in the CLI and config everything that way.
Why not just offer both and give the users the choice to use whatever they please? Both CLI and GUI have advantages.