Coming soon - Get a detailed view of why an account is flagged as spam!
view details

This post has been de-listed

It is no longer included in search results and normal feeds (front page, hot posts, subreddit posts, etc). It remains visible only via the author's post history.

133
Are the "ivory tower" Linux guys not using the command line any more or something?
Post Body

I just tried CentOS 7 for the first time and I keep stumbling across various more-or-less terrible changes to the CLI environment. I'm sure these are familiar to everyone - systemctl instead of service, ip instead of ifconfig, firewall-cmd instead of iptables. And so on.

So the natural reaction is to make a post about "who moved my cheese" and complain about why perfectly good things got changed. This is not that post. I understand that systemd is a thing, that it makes laptops run longer on their battery or machines boot faster or whatever, and that reloading the entire firewall every time you make a slight change is pretty dumb. I accept that these changes are for the better and embrace the new technologies. Progress is great and good and sometimes involves discomfort.

My question is - why does the command line interface to all the new stuff have to be so verbose and poorly thought out?

I mean, OK, we've got a new firewall configuration layer on top of iptables, and this is for some reason a good thing. But the command to configure it is "firewall-cmd" - 12 characters. And I can't even type "fw<tab>" - because part of the same package is called firewall-offline-cmd - a naming choice that seems almost specifically designed to frustrate shell command completion. There's just no way to do it fast. Or at least, not as fast as I'm used to.

Or here's another one. The new firewall-cmd requires that you issue any given change twice, once to update the running configuration and another to update the permanent configuration. There doesn't seem to be any way to save the running configuration to permanent. (Online sources recommend you make all your changes as --permanent, then do --reload, which utterly defeats the purpose of having the new abstraction layer.)

But ok, let's roll with it. Let's trust our upstream developers and assume they had some very good reason not to provide this functionality. So the natural thing to do at the CLI is to make the change, then hit up arrow and run it again as --permanent. Except that firewall-cmd requires that --permanent, if specified, must be the first option. So the number of keystrokes to perform the task is tripled. I can't for the life of me imagine why the order of the commands could possibly matter - don't we have getopt for that? Hasn't this been a solved problem for 30 years?

All these new commands are just painfully awkward, and don't fit the style of CLI that we've been used to with the GNU tools. I mean, maybe they're still slightly less verbose than PowerShell, but at least PowerShell has tab-completion of options rather than just files.

Many people have made the same complaint with systemctl's reversing the order of the service name and the command (systemctl start httpd instead of service httpd start), meaning you can't up-arrow and change the command easily. But then we have other issues. When you run "systemctl restart httpd" you get no output. Did it do anything? You can see it takes a second run, but ... did it actually do anything?

I bet the GUI tells you if it did anything. GUIs don't have buttons you click on that silently do things with no visible indication anything is happening.

And I wonder if that's the point? Is new development on Linux now focusing on the GUI, with the CLI an afterthought? Or is there some cool new way of interacting with the CLI that I just don't understand?

What's the deal with this?

Author
Account Strength
100%
Account Age
15 years
Verified Email
Yes
Verified Flair
No
Total Karma
210,172
Link Karma
2,136
Comment Karma
205,579
Profile updated: 1 day ago
Posts updated: 3 months ago

Subreddit

Post Details

We try to extract some basic information from the post title. This is not always successful or accurate, please use your best judgement and compare these values to the post title and body for confirmation.
Posted
9 years ago