Do not follow the Unix and Linux style of cryptic, unintuitive commands in the Command Line Interpreter (CLI). Rather do what Digital Equipment Corporation (DEC) did with their Digital Control Language (DCL) and other companies did with CPM and DOS.
Make the commands in the CLI standard English. The command for help should be, just that, HELP. To print something, PRINT. To display a directory, DIRECTORY. To concatenate files, CONCATENATE. To invoke mail, MAIL. Edit a file, EDIT. To compile a program, COMPILE. To link/bind together objects and libraries into an executable, LINK or BIND. Etcetera, etcetera, etcetera.
Support symbolic definitions. Those users who wish to use symbols then may do so, using such non-intuitive commands such as MAN when HELP is needed or GREP to EDIT a file. A symbol may actually override a system command. This is not necessarily a mistake, it may very well be intentional. A warning message should be issued at the time of symbol defintion indicating a system command is overwritten but, allow the (re)definition to occur.
For the power users, they can create a command file (script) that performs the symbol definitions at startup, so when they use the CLI, UNIX users have their GREPs and MANs and others have whatever makes them comfortable.
Require uniqueness to determine precedence. Suppose a user uses a symbol such as EDT to invoked an add-on editor. If the user then types only ED, the system editor is invoked because according to uniqueness precedence, the first command, system or symbolic, will be EDIT rather than EDT. This is not problematic but usual and intuitive, because this is way most people think. The user could just as easily redefine EDIT or define ED to invoke an add-on editor.
Likewise, abbreviating a command means shortening it rather than redefining it. So, ED[IT] invokes the system editor or DIR[ECTORY] displays the contents of a directory and if no other command began with H, H[ELP] invokes help. Note - the letters between the brackets would not be typed, I show them to clarify what command may be invoked.
It is unreasonable to expect everyone to be a nerdy, UNIX geek :-). And though UNIX and Linux support symbols, their CLIs are Greek to the uninitiated or inexperienced. It will require the assistance of others or additional instruction for them to make use of a UNIX/Linux CLI. The price for this is lower productivity and diminished acceptance.
Bottom line, you want users productive as soon as possible with the least amount of interference or support.