home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 18 REXX / 18-REXX.zip / cmdpk164.zip / cmdpak0.inf (.txt) < prev    next >
OS/2 Help File  |  1998-01-10  |  28KB  |  485 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. MLRXSHL and CommandPak Reference ΓòÉΓòÉΓòÉ
  3.  
  4.      Introduction 
  5.  
  6.      About This Online Documentation 
  7.  
  8.      Notices 
  9.  
  10.  
  11. ΓòÉΓòÉΓòÉ 2. Introduction -- Start Here ΓòÉΓòÉΓòÉ
  12.  
  13. The package you have just installed consists of two "subpackages": MLRXSHL and 
  14. CommandPak. 
  15.  
  16.      MLRXSHL (W) (C) 1994-97 Martin Lafaix 
  17.  
  18.       This is a collection of tools that improve your command-line environment. 
  19.       It contains CmdShl, SDir, FileList, Query, less, df, pushd, popd, and 
  20.       whence. 
  21.  
  22.      CommandPak (W) (C) 1997-98 Ulrich M╨ñller 
  23.  
  24.       This is a collection of tools that have derived from or were designed for 
  25.       MLRXSHL. It contains a default profile for MLRXSHL's CmdShl plus xcp, 
  26.       xdir, xhelp, xren, ln, recurse, watchdrv, and also the install program 
  27.       that you have probably just used to install this package. 
  28.  
  29.  Both packages are constantly improved. The two authors are in frequent contact 
  30.  in order to ensure compatibility. 
  31.  
  32.  All tools contained work best when used together, although most of them can be 
  33.  used independently also. 
  34.  
  35.  In order to start using MLRXSHL/CommandPak, open the CommandPak folder on your 
  36.  desktop and double-click on the CmdShl icon. A CmdShl session will start, 
  37.  where you can start trying out things. 
  38.  
  39.  We suggest reading the following chapters in this introduction before 
  40.  consulting the in-depth references of the different programs in this package: 
  41.  
  42.      If you have not worked with the OS/2 command line before, please see the 
  43.       subsection "What is the OS/2 command line?", which contains a short 
  44.       introduction. 
  45.  
  46.      If you're interested what MLRXSHL and CommandPak will improve at your 
  47.       command shell, please consult "What do MLRXSHL and CommandPak do?" 
  48.  
  49.      If you're curious how CmdShl and the other functions install themselves 
  50.       on top of CMD.EXE, please see "How do MLRXSHL and CommandPak work?" 
  51.  
  52.  Please consult the OS/2 REXX Reference to learn more about the REXX 
  53.  programming language. 
  54.  
  55.  
  56. ΓòÉΓòÉΓòÉ 2.1. What Is the OS/2 Command Line? ΓòÉΓòÉΓòÉ
  57.  
  58. When you start OS/2, by default the Workplace Shell (WPS) is started. This is 
  59. the environment you are probably more or less used to: you see little icons 
  60. that represent objects (e.g. data files, programs, printers, hard drives etc.), 
  61. which provide a fairly easy and intuitive way to make your computer do things. 
  62. This type of interface to your computer is generally called a "graphical user 
  63. interface" (GUI), because certain graphics represent certain elements and 
  64. functions of your computer. Other operating systems also provide GUIs: for 
  65. example Windows 95, the Macintosh operating system (MacOS), and Linux (the 
  66. X-Window system). 
  67.  
  68. GUIs are a fairly new achievement though. Only a few years ago, the preferred 
  69. way of interacting with a computer was a command line shell, where the user 
  70. would enter certain commands known to the operating system to perform actions 
  71. on files, start programs, print documents and so on. A typical example of this 
  72. evolution can be seen with DOS, which only knows a command line, while Windows 
  73. 3.x sits on top of DOS and sort of translates the graphical operations 
  74. performed by the user to the underlying operating system. Even Windows 95 still 
  75. uses DOS internally (DOS version 7.0), although Microsoft has tried to make 
  76. this not so obvious any more. 
  77.  
  78. Most of today's operating systems still provide two interfaces to the user: 
  79. first, a command line shell, and second, a graphical user interface (GUI). Both 
  80. interfaces are actually implemented by a program that runs on top of the core 
  81. of the operating system, which the user normally never gets to know. For 
  82. example, with DOS, the command line shell is provided by a program called 
  83. COMMAND.COM, which is started automatically after DOS has finished booting. If 
  84. you want, you can replace COMMAND.COM with another command processor; some 
  85. shareware programs (like 4DOS) use this opportunity to install a better command 
  86. processor than COMMAND.COM. Windows 3.1 is just a GUI to DOS and could 
  87. theoretically be replaced by something else also (although no Windows programs 
  88. will run any more then). 
  89.  
  90. Now in OS/2, the aforesaid translates into the following: 
  91.  
  92.      OS/2's GUI is, as already mentioned, called the Workplace Shell (WPS). It 
  93.       a very complex and powerful conglomerate of executables and dynamic link 
  94.       libraries. If you want to start a program with the WPS, most of the time 
  95.       you just double-click on its respective icon, and the WPS then calls a 
  96.       function in the OS/2 kernel which will start "netscape.exe". 
  97.  
  98.  
  99.      On the other hand, the command line interface is provided by a program 
  100.       called CMD.EXE in the \OS2 directory. Try opening an OS/2 window (with a 
  101.       command line interface) and type "netscape"; CMD.EXE will realize that 
  102.       you're trying to start "netscape.exe" (provided that it resides on your 
  103.       PATH), and call just the same OS/2 kernel function which will then start 
  104.       Netscape. 
  105.  
  106.  
  107.  Obviously, the WPS and the command line are just two different ways to achieve 
  108.  the same things. 
  109.  
  110.  Both of OS/2's interfaces (the WPS and the command line) are specified in 
  111.  OS/2's CONFIG.SYS: if you want, you can prevent the WPS from booting and have 
  112.  only a "command line OS/2" by removing the PMSHELL.EXE statements, which 
  113.  normally start the WPS. On the other hand, you can replace CMD.EXE by another 
  114.  command processor also (which, for example, the shareware packages 4OS2 and 
  115.  YAOS do). 
  116.  
  117.  While GUIs generally have the advantage of making things more intuitive and 
  118.  accessible to inexperienced users, many operations are more comfortably 
  119.  performed on the command line -- once you know how to use it. Let's take an 
  120.  example: Imagine you have a folder with 30 HTML files (ending in ".HTM") and 
  121.  you would like to rename all of their endings to ".TXT". With the WPS you 
  122.  would have to Alt-click on each one of them and type in something new. On the 
  123.  command line, you could just type 
  124.  
  125.   ren *.htm *.txt
  126.  
  127.  where "ren" stands for "rename", and the asterisk ("*") stands for "any number 
  128.  of any character", so that a file "a.htm" would be renamed, as well as a file 
  129.  "xyz123_blah.htm". Files ending in ".doc" or even ".htm2" however would not be 
  130.  touched. 
  131.  
  132.  So, depending on what you want your computer to do, sometimes a command line 
  133.  interface can be more flexible than a GUI. 
  134.  
  135.  The most important OS/2 commands are: 
  136.  
  137.      CD   -- change directory, 
  138.      DIR   -- show contents of a directory, 
  139.      REN   -- rename a file, 
  140.      DEL   -- delete a file, 
  141.      COPY  -- copy (duplicate) a file. 
  142.  
  143.  
  144.  Look in the "OS/2 Online Reference" that comes with OS/2 to see more (many 
  145.  more...) details. 
  146.  
  147.  
  148. ΓòÉΓòÉΓòÉ 2.2. What Do MLRXSHL and CommandPak Do? ΓòÉΓòÉΓòÉ
  149.  
  150. While the OS/2 command line (provided by CMD.EXE) is already a lot more 
  151. flexible and comfortable compared to DOS, still a number of things could be 
  152. improved. Especially after having worked with a UNIX derivative (such as 
  153. Linux), one realizes the following: 
  154.  
  155.      Especially when having to type long file names, the command line editing 
  156.       could be much more comfortable. 
  157.  
  158.      CMD.EXE cannot be customized; moreover, when using environment variables, 
  159.       for each change made to CONFIG.SYS, a reboot is required. 
  160.  
  161.      CMD.EXE provides no self-defined commands (aliases). 
  162.  
  163.      One cannot redefine keys so that pushing a certain key would 
  164.       automatically execute a certain function. 
  165.  
  166.      The provided commands for file handling (DIR, REN, COPY, MOVE) are also 
  167.       not very flexible: they lack a more lucid (and configurable) display, 
  168.       interactive file processing, backup options, extended attribute handling, 
  169.       and so on. 
  170.  
  171.      CMD.EXE does not provide much support for the features of the WPS. As a 
  172.       consequence, one has to use EITHER the WPS OR the command line to perform 
  173.       certain operations; both do not interact very well. 
  174.  
  175.      Although the OS/2 command line interface does provide a "help" command, 
  176.       its features are pretty limited. When working with the command line, a 
  177.       one-command interface to all of OS/2's help facilities and other 
  178.       documents (most importantly in HTML format) would be helpful. 
  179.  
  180.  MLRXSHL and CommandPak use REXX to address these problems. As opposed to other 
  181.  packages (such as 4OS2), the default OS/2 CMD.EXE is NOT replaced, but 
  182.  enhanced: a new command line is provided, with better editing options, aliases 
  183.  (self-defined commands), key redifinitions, and more. The entered commands are 
  184.  mostly passed on to the underlying CMD.EXE. In addition, a number of new 
  185.  programs for use with the command line are introduced. A few of them replace 
  186.  CMD.EXE's built-in commands with the use of aliases. 
  187.  
  188.  
  189. ΓòÉΓòÉΓòÉ 2.3. How Do MLRXSHL and CommandPak Work? ΓòÉΓòÉΓòÉ
  190.  
  191. One of the most flexible features of CMD.EXE is the ability to process REXX 
  192. programs, with which you can write pretty complex software without needing a 
  193. compiler. REXX is already included in OS/2. 
  194.  
  195. Please consult the OS/2 REXX Reference to learn more about the REXX programming 
  196. language. 
  197.  
  198. Now, CmdShl is simply a REXX program which is started by CMD.EXE. While it is 
  199. running, it takes input from the keyboard, checks for validity, translates 
  200. characters into user-defined commands when neccessary, and so on. This means 
  201. the editing is completely taken over by CmdShl, although it imitates CMD.EXE's 
  202. behaviour, while also offering a number of new features (such as command / 
  203. argument expansion and more). 
  204.  
  205. When you press the Enter key, CmdShl evaluates your input according to the 
  206. following: 
  207.  
  208.    1. If your input is a CmdShl built-in command (such as "cd", "quit", "alias" 
  209.       "rule" etc.), it is processed internally. "Built-in" means that the 
  210.       command is implemented in CmdShl's code itself (in the file 
  211.       "cmdshl.cmd"). 
  212.  
  213.    2. If your input has been defined as an alias, CmdShl executes the commands 
  214.       that were defined with it. For example, when you enter "dir", which is 
  215.       defined as an alias to "xdir.cmd" in the default profile, xdir is 
  216.       executed. Obviously, this way CMD.EXE's standard commands can easily be 
  217.       replaced by other programs. 
  218.  
  219.    3. If your input seems to be a directory and the "executable directories" 
  220.       function has been enabled, CmdShl changes the current directory, as if 
  221.       you had entered "cd <directory>". CmdShl's impCD variable directs this 
  222.       feature and its priority over regular commands; see CmdShl's reference 
  223.       for details. 
  224.  
  225.    4. If none of the above applies, your input is passed on to CMD.EXE, which 
  226.       then executes it; so when the entered command is a CMD.EXE built-in (for 
  227.       example "copy"), CMD.EXE processes it directly; otherwise, CMD.EXE 
  228.       searches an external program. This happens for example when you call 
  229.       "watchdrv" or "pstat". If the command is not found (e.g. because you 
  230.       misspelled it), CMD.EXE displays an error message. After the command has 
  231.       been executed, CmdShl regains control and lets you enter a new line. 
  232.  
  233.  The features of MLRXSHL and CommandPak are implemented on all of these levels. 
  234.  The editing features are, of course, implemented in CmdShl itself, while most 
  235.  of the new commands (except for the "built-ins") reside in external files 
  236.  (query.cmd, xdir.cmd, xren.cmd, ln.cmd etc.). Finally, a few aliases are 
  237.  defined to replace certain CMD.EXE commands (such as "dir", "ren" etc.); since 
  238.  aliases have higher priority over CMD.EXE, they can override existing 
  239.  commands. For other commands that have no counterpart in standard OS/2 (like 
  240.  "query" and "ln"), aliases are not neccessary, because CMD.EXE will find them 
  241.  on its own (provided they reside on the PATH). 
  242.  
  243.  
  244. ΓòÉΓòÉΓòÉ 3. About This Online Documentation ΓòÉΓòÉΓòÉ
  245.  
  246. CommandPak's documentation is available in two ways: 
  247.  
  248.      The online documentation (the INF books you are now reading) was designed 
  249.       to acquaint you with both MLRXSHL and CommandPak. 
  250.  
  251.       Each section after the Notices describes a certain part of the MLRXSHL / 
  252.       CommandPak package, containing a "What's That" subsection giving an 
  253.       overview of the presented tool, followed by one or more subsections 
  254.       describing the installation process and the detailed usage of the tool. 
  255.  
  256.       Since the two provided subpackages are maintained individually by the 
  257.       respective authors (Martin Lafaix and Ulrich M╨ñller), the online 
  258.       documentation has been split into several .INF files. The three files 
  259.       are: 
  260.         -  CMDPAK0.INF -- containing everything under "Introduction -- start 
  261.            here" and "Notices". This is the introductory document without any 
  262.            actual reference information. It was written by Ulrich M╨ñller, based 
  263.            on MLRXSHL0.INF by Martin Lafaix, which is the introductory document 
  264.            to MLRXSHL only. 
  265.         -  MLRXSHL.INF -- the online reference of MLRXSHL, written by Martin 
  266.            Lafaix. 
  267.         -  CMDPAK.INF -- the online reference of CommandPak, written by Ulrich 
  268.            M╨ñller. 
  269.       By double-clicking on the documentation icon in the CommandPak folder or 
  270.       by typing "help ref" at the CmdShl prompt, all three files are joined and 
  271.       opened together. 
  272.  
  273.       If you wish to alter/extend MLRXSHL and redistribute it, you can easily 
  274.       extend the present structure of the online reference, provided that you 
  275.       have IBM's IPFC installed, which is part of the OS/2 Toolkit. Simply take 
  276.       MLRXSHL0.IPF, the IPF source file for MLRXSHL.INF, which is also shipped 
  277.       in this package, add anything you wish to this introductory document, and 
  278.       start with a new, fourth online document for your software. Then, open 
  279.       the new documentation with "HELP 
  280.       <YOURPCK>0.INF+MLRXSHL.INF+<YOURPCK>.INF", replacing <YOURPCK> with the 
  281.       name of your package. 
  282.  
  283.      In addition, extensive help at the command line is available with the use 
  284.       of the new "help" command. Just type "help" and press Enter, and you will 
  285.       receive further information on how to use "help". 
  286.  
  287.  Please see the "The Syntax Diagrams Explained" section to learn about the 
  288.  symbols used throughout this documentation. 
  289.  
  290.  
  291. ΓòÉΓòÉΓòÉ 3.1. The Syntax Diagrams Explained ΓòÉΓòÉΓòÉ
  292.  
  293. This online documentation uses a widely accepted format for describing the 
  294. syntax of commands at the command line. The following symbols are used both in 
  295. the INF books that you are currently reading and with the command-line "help" 
  296. command: 
  297.  
  298.      When only a part of a command is capitalized, you can either type the 
  299.       full command or abbreviate it by only using the capitalized letters. 
  300.       Example: 
  301.  
  302.                 DEFine
  303.  
  304.       means that you can either type "def" or "define". With most commands 
  305.       (except CmdShl aliases), case is not important; here, you could also type 
  306.       "DEF" or "DEFINE". 
  307.  
  308.      Text surrounded by by angle brackets (e.g. "<text>") is not supposed to 
  309.       be typed in, but replaced by something meaningful that is usually 
  310.       referred to in the explanation of the respective command. Example: 
  311.  
  312.                 help <topic>               search for <topic>
  313.  
  314.       means that you have to replace "<topic>" with the topic that you actually 
  315.       want to search for. 
  316.  
  317.      Everything within "[" and "]" is optional. You may use it or leave it 
  318.       out. Example: 
  319.  
  320.                 def <key> [<value>]
  321.  
  322.       means that you have to type "def" with a key name; the following 
  323.       definition is optional. 
  324.  
  325.      Alternatives within "[]" or "{}" are separated by a vertical line ("|"). 
  326.       When enclosed in "{}", using one of the alternatives is obligatory; when 
  327.       enclosed in "[]", you CAN use one of the alternatives. Examples: 
  328.  
  329.                 foo [-h|/?]                      get help
  330.                 foo {-h|/?}                      get help
  331.  
  332.       In the first example, you can type either "foo", or "foo -h", or "foo /?" 
  333.       to get help; in the second example, only "foo -h" or "foo /?" would do. 
  334.  
  335.      Three dots ("...") specify that the preceding element may be repeated. 
  336.       Example: 
  337.  
  338.                 xdir -x[:{a|d|t|s|e|l}...]
  339.  
  340.       would allow "xdir -x", "xdir -x:a", "xdir -x:asl" and so on. 
  341.  
  342.  Here is an another example of a typical syntax explanation: 
  343.  
  344.       help [sys|rex]<nr>    give help on OS/2 error message number <nr>
  345.  
  346.  means that you have to type "help"; optionally you can add either "sys" or 
  347.  "rex". You have to specify <nr> at the end of the line, which in this case is 
  348.  supposed to be a number. In this case, valid inputs would be: 
  349.  
  350.       help 001
  351.       help sys023
  352.       help rex040
  353.  
  354.  Now, if you feel fit for syntax diagrams, type "help query" at the command 
  355.  shell to see a REALLY WILD syntax explanation. I admit that Martin Lafaix' 
  356.  diagram in the query reference is a bit more lucid. 
  357.  
  358.  
  359. ΓòÉΓòÉΓòÉ 4. Notices ΓòÉΓòÉΓòÉ
  360.  
  361.      Disclaimer 
  362.  
  363.      Licence and Copyright 
  364.  
  365.      Comments and suggestions 
  366.  
  367.      Year 2000 compliance 
  368.  
  369.      Trademarks 
  370.  
  371.      Revision history 
  372.  
  373.  
  374. ΓòÉΓòÉΓòÉ 4.1. Disclaimer ΓòÉΓòÉΓòÉ
  375.  
  376. January 1998 
  377.  
  378. Please read through the following sections carefully: 
  379.  
  380.    1. This disclaimer applies to both MLRXSHL and CommandPak: 
  381.  
  382.       The following paragraph does not apply to the United Kingdom or any 
  383.       country where such provisions are inconsistent with local law: 
  384.  
  385.       THIS PUBLICATION IS PROVIDED "AS IS," INCLUDING ANY SAMPLE APPLICATION 
  386.       PROGRAMS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, 
  387.       INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY 
  388.       OR FITNESS FOR A PARTICULAR PURPOSE. 
  389.  
  390.       Some states do not allow disclaimer of express or implied warranties in 
  391.       certain transactions, therefore, this statement may not apply to you. 
  392.  
  393.    2. This publication could include technical inaccuracies or typographical 
  394.       errors. Changes are periodically made to the information herein; these 
  395.       changes will be incorporated in new editions of the publication. Martin 
  396.       Lafaix and Ulrich M╨ñller may make improvements and/or changes in the 
  397.       product(s) and/or the program(s) described in this publication at any 
  398.       time. 
  399.  
  400.    3. Please read through the Licence and Copyright section also. 
  401.  
  402.  
  403. ΓòÉΓòÉΓòÉ 4.2. Licence and Copyright ΓòÉΓòÉΓòÉ
  404.  
  405.      CommandPak COPYRIGHT LICENCE 
  406.  
  407.       The CommandPak is FREEWARE. Since most of this package is written in 
  408.       REXX, you may improve, modify, add, take away anything you like without 
  409.       payment to Ulrich M╨ñller. 
  410.  
  411.       The CommandPak is NOT released in the public domain, however. Ulrich 
  412.       M╨ñller retains his COPYRIGHT to his parts of this package. 
  413.  
  414.       This licence does not necessarily cover future releases. I retain the 
  415.       right to modify the licence agreement for future versions. 
  416.  
  417.       This licence applies to the functions of CommandPak only. The licence for 
  418.       MLRXSHL is given by Martin Lafaix and included below. 
  419.  
  420.       (C) Copyright CommandPak Ulrich M╨ñller, 1997-98. All Rights Reserved. 
  421.  
  422.      MLRXSHL COPYRIGHT LICENSE 
  423.  
  424.       This package contains application programs in source language, which 
  425.       illustrate OS/2 programming techniques. You may copy, modify, and 
  426.       distribute these application programs in any form without payment to 
  427.       Martin Lafaix, for the purposes of developing, using, marketing or 
  428.       distributing application programs conforming to the OS/2 application 
  429.       programming interface. 
  430.  
  431.       (C) Copyright MLRXSHL Martin Lafaix, 1995-1997.  All Rights Reserved. 
  432.  
  433.  If you wish to republish these packages or parts or modifications of them, we 
  434.  would be happy to be notified and, more importantly, mentioned as authors. 
  435.  
  436.  
  437. ΓòÉΓòÉΓòÉ 4.3. Contact -- Comments and Suggestions ΓòÉΓòÉΓòÉ
  438.  
  439. Since this package consists of two "subpackages" which work together, please 
  440. contact the respective author for comments and suggestions. Type "help 
  441. <command>" to find out the author of a certain <command>. 
  442.  
  443. For parts of MLRXSHL, this is: 
  444.  
  445.      Martin Lafaix
  446.      8, rue Berthollet
  447.      75005 Paris
  448.      France
  449.  
  450.      e-mail: lafaix@ibm.net
  451.      www:    http://wwwi3s.unice.fr/~lafaix/
  452.  
  453. For parts of CommandPak, this is: 
  454.  
  455.      Ulrich M╨ñller
  456.      e-mail: ulrich.moeller@rz.hu-berlin.de
  457.      www:    http://www2.rz.hu-berlin.de/~h0444vnd/
  458.  
  459. The above WWW addresses also carry the newest versions of MLRXSHL and 
  460. CommandPak, respectively. 
  461.  
  462.  
  463. ΓòÉΓòÉΓòÉ 4.4. Year 2000 Compliance ΓòÉΓòÉΓòÉ
  464.  
  465. The date-sensitive tools contained in MLRXSHL and CommandPak (namely Fl, SDir, 
  466. and xdir) are year-2000 compliant. 
  467.  
  468.  
  469. ΓòÉΓòÉΓòÉ 4.5. Trademarks ΓòÉΓòÉΓòÉ
  470.  
  471. The following terms are trademarks of the IBM Corporation in the United States 
  472. or other countries or both: 
  473.  
  474. IBM 
  475. Object REXX 
  476. Operating System/2 
  477. OS/2 
  478.  
  479.  
  480. ΓòÉΓòÉΓòÉ 4.6. Revision history ΓòÉΓòÉΓòÉ
  481.  
  482. Please see the "history.cpk" file in the CommandPak directory for a joint log 
  483. of CommandPak's history. 
  484.  
  485. Moreover, each program documented in this reference has a History section also.