What commands should a modern CLI support out of the box?

MadRat

Lifer
Oct 14, 1999
11,999
307
126
If you were to design the functionality of a CLI, what features would you deem essential?
 

phisrow

Golden Member
Sep 6, 2004
1,399
0
0
Things like tab completion, history, regular expressions, ability to execute scripts, and pipes would be a must. Beyond that, though, it mostly comes down to the utilities that the system comes with. The best CLI in the world is useless if the system it controls has no good CLI programs. In principle, the CLI should be able to do everything that can be done on the system. This would pretty much demand a system with text config files and applications with good command line hooks.
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
What phisrow said, most of the functionality in Linux is from the installed tools and not the cli itself. Although the shell must be smart enough to support the features he mentioned but also be simple enough to allow decent scripting, i.e. better than CMD but not as complicated as Monad. bash has a number of complicate features like arrays, but most people never see them.
 

MadRat

Lifer
Oct 14, 1999
11,999
307
126
One of my pet peeves is that the windows CLI is pretty much single tasked unless calls are made to start up the system tools outside the main script. Should a modern CLI be able to intelligently manage several ping.exe statements in succession without waiting necessarily for the output?
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
Should a modern CLI be able to intelligently manage several ping.exe statements in succession without waiting necessarily for the output?

If you ran 3 pings at the same time all of their output would get intertwined. Of course there should be a way to do it (like using an & in bash), but chances are you wouldn't want to do it anyway.
 

Brazen

Diamond Member
Jul 14, 2000
4,259
0
0
screen

edit: granted that is an addition package, and not exactly a "CLI feature."
 

TerryMathews

Lifer
Oct 9, 1999
11,464
2
0
Originally posted by: Brazen
screen

edit: granted that is an addition package, and not exactly a "CLI feature."

But there are certain 'hooks' that have to be there for screen to work.

ANSI support would be my biggie. Ideally, just look at what Linux/*BSD supports, they are currently the high-water mark of CLIs.
 

nweaver

Diamond Member
Jan 21, 2001
6,813
1
0
screen type stuff would be great (disconnect a session, log off, log back on and reconnect. Have multiple people connect to a screen session and observe what someone is doing for training, etc)
Decent looping and regex stuff

tbh, the windows shell isn't THAT bad with 2k3, if you grab some third party tools and the server res kits. No bash, but still decent enough to do some stuff, and netsh makes up for some craptastic GUI tools they have.