Solved

better terminal emulator program than cmd?

Posted on 1997-12-21
14
508 Views
Last Modified: 2013-12-21
Is there a better terminal emulator program to run a command
shell, e.g., bash, csh, zch, etc. in than cmd? I know there
are many programs to run telnet, ftp, etc. in, but this is
not what I need.
0
Comment
Question by:emieng
  • 7
  • 3
  • 3
  • +1
14 Comments
 
LVL 3

Expert Comment

by:drcheap
ID: 1788020
I am not 100% sure what you consider a "better" command shell, but I do know of one that far exceeds the usefulness of CMD.EXE.

The product:  JP Software's 4NT

This is the NT counterpart of the legendary 4DOS...which I used for years until I got NT, and was so dependent on it's wealth of cool features that I was in a living hell for a week after installing NT and before installing 4NT :)

I'm locking the question since I think this is what you are looking for in a "better" shell.  If not, please unlock and re-state the question!
0
 
LVL 3

Expert Comment

by:drcheap
ID: 1788021
I also should mention that this shell offers a TON of conveniences that Micro$oft would never think of...including but not limited to:  filename/directory completion, extended directory searches, extended wildcards and ranges, aliasing, file descriptions, and super-enchanced batch file processing...

And, of course, where to find it?  http://www.jpsoft.com/

0
 
LVL 12

Expert Comment

by:j2
ID: 1788022
i agree, the only replacement worth the name is 4NT. great software
0
 

Author Comment

by:emieng
ID: 1788023
I'm not looking for a replacement shell, the ones I mentioned are more than adequate. What I'm looking for is a program to run them in. If you're familiar with the X Window System, I'm looking for a new "xterm".
0
 
LVL 12

Expert Comment

by:j2
ID: 1788024
In that case: No.
0
 
LVL 3

Expert Comment

by:drcheap
ID: 1788025
Then...  I am confused about what exactly you are wanting to do.

When you say, "programs to run telnet, ftp, etc.," are you refering to actual clients such as NetTerm and CuteFTP?

To the best of my knowledge, in X an "xterm" is just a window that contains a command shell, it is not runnin "in" anything except the window manager itself.  This is synonymous with running CMD in a window in NT.  

I am not sure, but I think there is an actual "xterm" executable which does run the shell, but I don't know of it to have any other purpose than setting window geometry/etc.; thereby making it transparent to the whole process.  

What I am also confused about is what you are trying to do overall, are you trying to run shells like bash or zsh under NT?   That seem sort of funky to me, but I have heard of stranger things.

Or, perhaps, are you looking for a MS-Windows based X server?

I am being lost on your intentions somewhere between NT and UNIX.  Please clarify them a little more :)

0
 
LVL 3

Expert Comment

by:drcheap
ID: 1788026
After reading the original question I see that you refer to CMD as a terminal emulator to run a command shell in.  I think what is throwing me off is that CMD *is* a command shell; there is no terminal emulator.

The other thing that hit me is maybe you are wanting a terminal emulator that runs in CMD?  e.g. a command line telnet app for text-mode that would then allow you to get to a machine running bash or zsh or whatever.  I have one of these...really convenient!  Just a thought...
0
Don't lose your head updating email signatures!

Do your end users still have the wrong email signature? Do email signature updates bore you or fill you with a sense of dread? You can make this a whole lot easier on yourself by trusting an Exclaimer email signature management solution. Over 50 million users do...so should you!

 
LVL 5

Expert Comment

by:cer
ID: 1788027
Maybe he is looking for RCMD from the resourcekit. A remote CMD. If you install the server you can use the client RCMD to open a CMD-window on your computer, but the commands executed in there are all running on the remote machine.
Else I do not know what the issue is here.

0
 

Author Comment

by:emieng
ID: 1788028
I'm not looking to run commands remotely, just locally. Here's my
situation. I'm a long-time Unix bigot forced to use NT (why else
would anybody use it?) so I picked up the Cygnus GNU-Win32 software. Included in it is bash, a popular command shell within
the Unix community. So how do I run bash? If I double-click on it from Explorer, bash runs within a cmd window. I want to replace cmd in this situation with another program which acts as a terminal emulator, just as cmd is acting as a terminal emulator. xterm is a program which does this but I don't want to run an X server just to provide terminal emulation.
0
 
LVL 12

Accepted Solution

by:
j2 earned 20 total points
ID: 1788029
Sorry, then you really are out of luck, it cannot be done.
0
 
LVL 3

Expert Comment

by:drcheap
ID: 1788030
Have you ever used 4NT ?  After some tweaking, you can make it look and act like bash :)  But anyway, I have an idea...

The way NT actually runs an executable file is something like this:

You double click the EXE file
NT sees you want to open an EXE file
It find that it is registered as type "exefile"
Looks in HKEY_CLASSES_ROOT\exefile\shell\open\command
Finds the value of (Default) to be ""%1" %*"
     This means to "Run" the command line of the exefile name & any other parameters specified.  If you change this to something else...it eliminates the ability for NT to execute *any* .EXE file...now that's a nice way of restricting user rights :)

NT then executes the command line based on a few things:
Is it a 32 bit app?  Run it!
Is it a 16 bit app?  Use 16 bit subsystem.

So where does CMD fit into this?

CMD is just a 32bit app.  If you then spawn a 16bit app under it, the app may run completely within CMD, or under the 16bit subsystem depending on the nature of the program.

From what I can tell, NT directly executes all programs, 32 or 16 bit as standalone apps -- not requiring CMD at all.  To show how this works do the following:

First, make a copy of CMD.EXE to some location buried deep in a directory tree that is not in your PATH.  This is your saved backup copy, and only hope of reversal of this procedure :)

Next, delete all copies of CMD.EXE except the backup. (!)

Then, hit Start|Run and try and run various apps, try some 32bit, 16bit windows, 16bit DOS, try bash even!

Notice -- They all run!  Even DOS text-mode proggies that were made before 32bit x86 software was around!

Now, to further understand what is going on, open up the Task Manager and look in the Processes tab and observer as you run things... look for the name of the executable you are running if its 32bit, or look for ntvdm.exe if its a 16bit app.  You will not once see CMD appear in there, and it can't because as far as NT is concerned it doesn't exist!

Now, if your bash will run like this, then try it again after restoring CMD.EXE and keep an eye on the Task Manager|Processes.  If you see it run without CMD being run, then I have solved your problem because "bash is running, but not under CMD."
0
 
LVL 3

Expert Comment

by:drcheap
ID: 1788031
In fact, it's even better than your goal because it "eliminates the middleman" of a terminal emulator :)
0
 

Author Comment

by:emieng
ID: 1788032
Without hiding cmd.exe as you suggested, I can Run bash and it starts without cmd.exe showing up in the Task Manager. This sounds like your last scenario. Thanks for the discussion.
0
 
LVL 3

Expert Comment

by:drcheap
ID: 1788033
Thanks for the pionts too.  (sarcasm)
0

Featured Post

Do email signature updates give you a headache?

Constantly trying to correctly format email signatures? Spending all of your time at every user’s desk to make updates? Want high-quality HTML signatures on all devices, including on mobiles and Macs? Then, let Exclaimer solve all your email signature problems today!

Join & Write a Comment

Have you tried to learn about Unicode, UTF-8, and multibyte text encoding and all the articles are just too "academic" or too technical? This article aims to make the whole topic easy for just about anyone to understand.
The use of stolen credentials is a hot commodity this year allowing threat actors to move laterally within the network in order to avoid breach detection.
The viewer will the learn the benefit of plain text editors and code an HTML5 based template for use in further tutorials.
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now