T.R | Title | User | Personal Name | Date | Lines |
---|
469.1 | | ECC::JAERVINEN | Down with gravity! | Tue Apr 21 1987 12:48 | 6 |
| I think it will give you that message for *any* failure to start
an external command - like not enough memory etc. But I have observed
the same behaviour (only randomly) where it won't start an external
command even when everything seems to be ok (shell's path correct,
enough memory, the requested file is definitely there etc.).
|
469.2 | Let me Explain | CGFSV1::DREW | Steve Drew | Wed Apr 22 1987 11:49 | 23 |
| RE: .1
When you say you compile shell 2.05a do you mean Matt's 2.05 or
my version of 2.05M which is quite different, then one that has
command line editing, more commands, pathing ect.. and runs under
manx.
If you mean my version sounds like you have manx 3.20a and have
not installed the patch for the fexec functions which die under
1.2. And that is exactly what you'd see 'unknown command ect...'
Also there are a couple of patches needed for shell to work properly
under manx 3.4, due to changes in the manx libraries.
RE: .2
I use shell every day and the only time I ever get unknown command
error is when I make a typo, or the file's not there.
There is a problem with the manx 3.20a fexecv funtions where some
programs written by lattice cause a task held when invoked, like
polygon2 of fredfish disk nn. But this is fixed by manx 3.4a.
Steve.
|
469.3 | | ECC::JAERVINEN | Down with gravity! | Thu Apr 23 1987 03:51 | 10 |
| re .-1: I haven't compiled your shell; I'm using the executable
I pulled off the net some time ago.
Nevertheless, I have this problem every now and then; sometimes
I have just started too much stuff (I have only 512k) and I seem
to get 'unknown command' when there's not enough memory. However,
it sometimes happens that I get unknown command when I am positive
that I have enough memory and the file is there (and I haven't changed
any paths, assignemnts etc.).
|
469.4 | Patches needed | POMPEO::ZABOT | Marco Zabot-Adv.Tech.mgr-Turin ACT | Thu Apr 23 1987 07:06 | 8 |
| re .2
Steve,
you're fully right. Give credit where it's due.
YES! I'm using YOUR version ( of course )!
----
Do you ( or some other kind soul) have the mentioned patches for
MANXC 3.20a handy ?? Thanx.
|
469.5 | Sometimes it happens ! | CESARE::ZABOT | Marco Zabot-Adv.Tech.mgr-Turin ACT | Thu Apr 23 1987 10:38 | 5 |
| ( CRAZY-FLAG on )
Talking to myself !!
Marco, you have the patches right on your own directory LEDUMP.
Why do you bother the world asking what you already have ??
( CRAZY-FLAG off )
|
469.6 | Fragmentation? | DEBIT::RAVAN | | Thu Apr 23 1987 11:13 | 7 |
| re: .3
Maybe you're getting 'unknown command' because memory is becoming
fragmented and the AllocMem call is failing because of fragmentation,
not because of lack of memory? Just a thought.
-jim
|
469.7 | lower case ? | MQFSV1::LECOMPTE | Hubert Lecompte | Thu Apr 23 1987 12:46 | 13 |
|
I think I had the same problem.
Shell accept only lowercase character as commands if you use uppercase
it will send the command to DOS who will try to get it from the C:
directory.
Since shell uses commands that are not in the C: directory you will
get unknown error.
Hope that it helps.
Hubert.
|
469.8 | Fixed it ! | CESARE::ZABOT | Marco Zabot-Adv.Tech.mgr-Turin ACT | Fri Apr 24 1987 05:12 | 31 |
| I think I'm getting closer to understand ....
First. I must admit that in my 25 years of experience ( many of
which in supporting Customers) my favorite sentence has always been:
" Have read the documentation ??? This time I hadn't !!!
Summary.
1 - I'm using 2.05M Steve Drew version.
2 - This shell accepts shortened commands ( ver == version ). This
may be the reason for some of the following rules.
3 - A command is parsed to see if it matches an internal
command ( shell built in commands )
4 - If not, it is parsed to check if it begins with RUN in which
case it is passed as it is to DOS for execution.
5 - If not, the shell try to locate the VERB of the command line
using the SHELL PATH SEARCH LIST , defined with
SET _PATH path1,path2,path3 ....
6 - If not found, the shell issues the message Command not found.
The default _path is C:, RAM:, RAM:C/, DF0:C/, DF1:c/
My DOS_path was : C:, VD0:C/ , ....
that's why all the commands on VD0:C were not found.
Suggested implementation. Instead of 6) above:
6 - Command is passed as it is to DOS for execution. The STATUS
is intercepted ( new feature in 1.2 ) and if not zero
7 - The shell issue the message ' Command not found'
In this case you'll have two search pathes.
BTW. All this is true AFTER I have patched MANX C for 1.2
Thanx to all for the support.
marco
|
469.9 | | ECC::JAERVINEN | Down with gravity! | Fri Apr 24 1987 10:13 | 6 |
| re .7: yes, I know about lower/upper case - in fact, I use it
extensively(like saying "Set" instead of "set" to start the external
command SET.
The comment on memory fragmentation might be a valid one, though.
|
469.10 | Shell | AUTHOR::MACDONALD | WA1OMM Listening 224.28 | Fri Apr 24 1987 14:12 | 5 |
| $ FORMAT DRIVE DF1: NAME DISK1
Why doesn't this command work under Shell 2.05M?
Paul
|
469.11 | FORMAT resides in the system directory. | BIZET::TENNY | Dave Tenny | Vax Lisp development | Fri Apr 24 1987 17:23 | 3 |
| re .10
My guess is that you must add the sys:system to the
_path list. (I think format resides there).
|