Post by Paul TreadawayBut how will you ever work out that cp is copy a file?
You're assuming that the man (manual) command has been deliberately
removed for some reason?
$ cp
usage: cp [-R [-H | -L | -P]] [-f | -i] [-pv] src target
cp [-R [-H | -L | -P]] [-f | -i] [-pv] src1 ... srcN directory
$ cp abc
usage: cp [-R [-H | -L | -P]] [-f | -i] [-pv] src target
cp [-R [-H | -L | -P]] [-f | -i] [-pv] src1 ... srcN directory
$ cp abc def
cp: abc: No such file or directory
These error messages imply that the cp command requires two arguments,
and that the first argument to the cp command is the name of a file or
directory which should exist for the command to work. You may not get
much further with cp until you discover the ls command:
$ ls abc
ls: abc: No such file or directory
$ ls abc def
ls: abc: No such file or directory
ls: def: No such file or directory
$ ls abc def ghi
ls: abc: No such file or directory
ls: def: No such file or directory
ls: ghi: No such file or directory
It appears to take any number of arguments, each of which should be a
file or directory that exists. The ls command with no arguments will
do nothing if there are no files. If there are files, it will list
them. Assume there's one file, and it's called abc:
$ ls
abc
$ ls abc
abc
$ ls def
ls: def: No such file or directory
$ cp abc def
$ ls
abc def
That's clear enough, I think. But what if there are no files? Then
you'd have to create one. Assuming you tried every one-character
command in alphabetic order, then every two-character command in
alphabetic order, I think the first command that would create a file
would be "as". You'd be stuck in "as" until you happened to press
control-C or control-Z, either of which would get you back to the
prompt. After that, "ls" would show you that you have a file named
"a.out".
$ ls
a.out
$ cp a.out a.out
cp: a.out and a.out are identical (not copied).
$ cp a.out foo
$ ls
a.out foo
That's clear enough, I think. So now you know what cp does.
If you're on a multi-user system such as Panix, then the single-letter
command "w" would have given you a listing of all the users who are
on, together with what command they are running. This gives you a
list of commands you can try. It looks something like this:
4:02PM up 6 days, 8:26, 75 users, load averages: 0.66, 0.85, 0.66
USER TTY FROM LOGIN@ IDLE WHAT
kfl pts/16 mva1-dial1.popsite.net 1:50PM 0 w
I've edited out all the users except myself, to protect their privacy.
But here are the commands they are currently running:
(pine-4.64-uwmail)
-bash
-ksh
-ksh93
-tcsh
-usr/local/bin/tcsh
-zsh
/bin/ksh -i -o /bin/
/usr/bin/more -s /tm
/usr/local/bin/elm-2
/usr/local/bin/ksh
/usr/local/bin/vim /
alpine
centerim -a
emacs
irssi
lily
lynx
lynx nytimes
mutt
sleep 10
sleep 60
ssh
tf
trn4
vim setup/cmajor.sch
w
That would give you plenty to play with. Emacs, for instance, has its
own help system. Or are you assuming that's been removed too?
Post by Paul TreadawayWell as I say, man or help counts as being taught.
I'm not claiming that it's *intuitive*. I am claiming that it
wouldn't require a teacher's time.
Post by Paul TreadawayHaving worked for many years on a helpdesk, and dealt with countless
queries to which the correct (but not permitted) response was RTFM,
this will train a fair proportion of users. Maybe as many as 50%.
The rest will remain clueless.
I'm not claiming *everyone* can learn that way, or even that everyone
can learn at all.
Post by Paul TreadawayUnless it is intuitive, in which case it will need no documentation.
Presumably once we get to UIs at that level we will be on the verge
of The Singularity.
Either the enhancement is to the user's brain, which is just another
kind of teaching, or else the interface is a true AI, in which case
you're bootstrapping off the effort they took to learn English.
--
Keith F. Lynch - http://keithlynch.net/
Please see http://keithlynch.net/email.html before emailing me.