You've heard that UNIX is difficult and balk at the prospect of leaving VMS, don't you? Don't worry. Linux, one of the finest UNIX clones, is not more difficult to use than VMS; actually, I find it easier. Although VMS aficionados may not agree, in many people's opinion Linux is much more powerful and versatile.
Linux and VMS are both good operating systems and accomplish essentially the same tasks, but Linux has a few features that make it a good alternative to VMS. Moreover, Linux is available for PCs while VMS is not, and modern Pentium-based Linux machines can outperform a VAX. The icing on the cake is the excellent performance of modern video cards, which turn an X11-based Linux box into a fast graphic workstation; nearly always, quicker than dedicated machines.
I imagine you're a university researcher or a student, and that you use VMS for the following everyday tasks:
In the following sections I'm going to explain to you how to do these tasks under Linux, exploiting your experience with VMS. Prerequisites:
DCL
---is bash
(ask your
sysadm).
Please note that this HOWTO is not enough to acquaint you fully with
Linux: it only contains the bare essential to get you started. You
should learn more about Linux to make the most of it (advanced bash
features, programming, regular expressions...). From now on, RMP means
`please read the man pages for further details'. The man pages are the
equivalent of the command HELP
.
The Linux Documentation Project documents, available on ftp://sunsite.unc.edu:/pub/Linux/docs/LDP, are an important source of information. I suggest that you read Larry Greenfield's ``Linux User Guide''---it's invaluable for the novice user.
And now, go ahead.
This table attempts to compare VMS' and Linux' most used commands. Please keep in mind that the syntax is often very different; for more details, refer to the following sections.
VMS Linux Notes
------------------------------------------------------------------------------
@COMMAND command must be executable
COPY file1 file2 cp file1 file2
CREATE/DIR [.dirname] mkdir dirname only one at a time
CREATE/DIR [.dir1.dir2] mkdirhier dir/name
DELETE filename rm filename
DIFF file1 file2 diff -c file1 file2
DIRECTORY ls
DIRECTORY [...]file find . -name file
DIRECTORY/FULL ls -al
EDIT filename vi filename, you won't like it
emacs filename, EDT compatible
jed filename ditto---my favourite
FORTRAN prog.for g77 prog.f, no need to do LINK
f77 prog.f,
fort77 prog.f
HELP command man command must specify `command'
info command ditto
LATEX file.tex latex file.tex
LOGIN.COM .bash_profile, `hidden' file
.bashrc ditto
LOGOUT.COM .bash_logout ditto
MAIL mail, crude
elm, much better
pine better still
PRINT file.ps lpr file.ps
PRINT/QUEUE=laser file.ps lpr -Plaser file.ps
PHONE user talk user
RENAME file1 file2 mv file1 file2 not for multiple files
RUN progname progname
SEARCH file "pattern" grep pattern file
SET DEFAULT [-] cd ..
SET DEFAULT [.dir.name] cd dir/name
SET HOST hostname telnet hostname, not exactly the same
rlogin hostname
SET FILE/OWNER_UIC=joe chown joe file completely different
SET NOBROADCAST mesg
SET PASSWORD passwd
SET PROT=(perm) file chmod perm file completely different
SET TERMINAL export TERM= different syntax
SHOW DEFAULT pwd
SHOW DEVICE du, df
SHOW ENTRY lpq
SHOW PROCESS ps -ax
SHOW QUEUE lpq
SHOW SYSTEM top
SHOW TIME date
SHOW USERS w
STOP kill
STOP/QUEUE kill, for processes
lprm for print queues
SUBMIT command command &
SUBMIT/AFTER=time command at time command
TEX file.tex tex file.tex
TYPE/PAGE file more file
less file much better
But of course it's not only a matter of different command names. Read on.