====== Finding Help From Within the Shell ====== Note: Please look [[finding_help#sdf_specific_help|further down]] about help facilities specific to SDF, like the FAQ! While the UNIX shell may seem a bit daunting and cold with cryptic two-letter commands, dozens of command line switches, and no animated paper clips to show you the way, there are several different ways of getting help from the system. ---- ====== Using Manpages ====== ===== The Definitive Guide to RTFMing ===== The easiest and most comprehensive way of getting help is reading the manpage. You've probably heard RTFM (Read The Fscking Manual) somewhere throughout your computer use, well, this is that Manual. Manpages are the standard form of documentation for every UNIX. Learn to use them. Learn to love them. Where can you find them? It's pretty simple. Think of a command. (ls, rm, chmod, kill, grep) or a program (vi, mutt, snarf, majordomo) So go ahead, type % man command command being the name of the command you want to learn about. As you can see, manpages are broken down into sections. We'll use mkdir as an example. % man mkdir MKDIR(1) NetBSD General Commands Manual MKDIR(1) NAME mkdir - make directories SYNOPSIS mkdir [-p] [-m mode] directory_name ... DESCRIPTION mkdir creates the directories named as operands, in the order specified, using mode rwxrwxrwx (0777) as modified by the current umask(2). The options are as follows: -m Set the file permission bits of the final created directory to the specified mode. The mode argument can be in any of the for- mats specified to the chmod(1) utility. If a symbolic mode is specified, the operation characters ``+'' and ``-'' are inter- preted relative to an initial mode of ``a=rwx''. -p Create intermediate directories as required. If this option is not specified, the full path prefix of each operand must already exist. Intermediate directories are created with permission bits of rwxrwxrwx (0777) as modified by the current umask, plus write and search permission for the owner. Do not consider it an error if the argument directory already exists. The user must have write permission in the parent directory. EXIT STATUS mkdir exits 0 if successful, and >0 if an error occurred. SEE ALSO chmod(1), rmdir(1), mkdir(2), umask(2) STANDARDS The mkdir utility is expected to be IEEE Std 1003.2 (``POSIX.2'') compat- ible. NetBSD 2.0.2 January 25, 1994 NetBSD 2.0.2 For our ''mkdir'' command, the man page displayed has six sections: NAME, SYNOPSIS, DESCRIPTION, EXIT STATUS, SEE ALSO, and STANDARDS. The NAME section simply shows the name of the command and a terse description of its function. The SYNOPSIS gives a brief outline of the command syntax, so you can see what the command you enter should look like. Items in square brackets [ ] are optional. The DESCRIPTION section provides a detailed description of how the command works, including information on the various options or modes of the command. The EXIT STATUS section describes what status codes are generated by the command when it completes (successfully or unsuccessfully). These codes can be read by programs (such as a shell script) to determine how to react to the command's result. SEE ALSO provides cross referencing information for related commands or others which may be helpful. And finally, the STANDARDS section lists information on which standards this particular command complies with. The manual is divided up into nine sections: - User commands. - System calls and error numbers. - Functions in the C libraries. - Device drivers. - File formats. - Games and other diversions. - Miscellaneous information. - System maintenance and operation commands. - Kernel developers. In some cases, the same topic will appear on more than one section of the manual. For example, there is a chmod user command and a chmod() system call. How would you find the appropriate manpage? You can tell man which section you'd like to look under. If you wanted to find the user command you would type: % man 1 chmod This would display the manpage for the user command chmod. References to the specific sections are traditionally placed in parenthesis after the command name like so: chmod(1) Well, this is all fine and good if you know the name of the command, but what if you can't remember the name? 'man -k' can be used to search for keywords in the command descriptions. So, if you want to find a mail program you would type: % man -k editor A list of commands with the keyword “editor” in their descriptions will be presented on the screen. ---- ====== The GNU Info system ====== For programs of the [[http://www.gnu.org/|GNU Project]], you may also use the info command. If you know the name of a program, give it as an argument (like with ''man''). In fact, you can use info as an alias to man, because the info reader will simply display the man page if it cannot find an info entry (but you cannot specify the manpage section). However, navigation is different in the standard info reader, as it is based on the emacs text editor. Quick key help (for more, consult ''info info''): |**SPACE, BACKSPACE**|page forward, backward| |**TAB**|place cursor onto next menu item or link (info files are hyperlinked)| |**RETURN**|jump to the place where the link the cursor is sitting on points to| |**l** (the letter ell)|get back to the spot from where last jump started| |**u n p**|up, next, previous node (info files are hierarchically structured)| |**q**|quit the info reader| With most terminals, you can also move around using the cursor keys (arrows). ---- ====== SDF specific help ====== There are also a number of tools at SDF that you can use to get more help. //Enter the following commands at a shell prompt//. ^ Command^ Description^ |**help**|The SDF help system. After launching the 'help' reader by typing ''help'' at the shell prompt, navigate by the letter commands in brackets| |**faq**|A collection of frequently asked questions. After starting the FAQ reader, type 'g ' to enter a topic, 'l' to list the questions in the topic, and 't ' to read the FAQ. You can also view [[https://sdf.org/index.cgi?faq|an HTML version of the FAQ]] on the SDF website.| |**helpdesk**|If you cannot find your answer in the man pages, help, faq, or googling post a question to the helpdesk and a friendly member of the community will answer your question. Any member with ARPA status can login as an attendent to answer questions. Please note: in helpdesk you should only post questions directly related to SDF's systems, but not about general UNIX, programming or gardening - these belong to the bboard!| |**[[bboard]]**|To enter the SDF Bulletin Board System (BBOARD), type bboard at the command line. Help on using BBOARD may be found by typing h and ? at the bboard Command: prompt or at the [[bboard|bboard tutorial]]. If you have a general question about using the SDF system, post in . **If you have a question that requires intervention from an admin ((The //[[wp>System_administrator|admin]]// [[wp>Pseudonym|pseudonym]]‚ for members′ [[https://sdf.org/?status|home]]‚ is //[[https://sdf.org/?faq?BASICS?12|SDF Membership]]//.)) (e.g., software requests or membership queries), post in . //Admins// ((The //[[wp>System_administrator|admin]]// [[wp>Pseudonym|pseudonym]]‚ for members′ [[https://sdf.org/?status|home]]‚ is //[[https://sdf.org/?faq?BASICS?12|SDF Membership]]//.)) //don't read the other boards.//**| |**[[com]]**|Com and bboard are meeting places for the SDF community. You could also pose your question there. Bboard and faq have the same interface. See [[com|COM is not IRC]] for how to use com.| ===== SDF Specific Commands ===== === Informative Commands === ^Command^ Description ((//The table was merged from [[http://sdf.org/?tutorials/sdf_specific_commands|SDF Specific Commands]]//.))^ |''address''|prints out an address & paypal information for sending money to SDF; used by some other commands| |''arpa''|prints out information about the ARPA membership level| |''bbs''|gives information about purchasing a BBS documentary DVD set from SDF; seems to be a bit outdated| |''commands''|prints out a list of basic Unix commands; also available as “unix”| |''dba''|prints out information about the DBA membership| |''dialup''|gives information on SDF's dialup internet service| |''downtime''|displays the reason(s) for recent server downtime| |''dsl''|refers the user to “dsl.tenex.org” to find out about the availability of SDF DSL in one's area| |''editors''|displays the list of text editors from FAQ BASICS #09| |''faq''|interactive command for viewing the SDF Frequently Asked Questions (and their answers); uses the same command set as bboard| |''gallery''|lists some of the commands that users can use to contribute to the SDF galleries (see below)| |''games''|prints a list of some of the games installed on SDF| |''getdialup''|lists dialup internet services available in your area code| |''help''|a small interactive program listing useful commands from certain categories. Note that this program is located at /usr/pkg/bin/help and is not to be confused with the help command built into most shells.| |''how''|gives an overview of the types of memberships available| |''maxusers''|displays the current record for the maximum number of users logged into SDF at once| |''meta''|prints out information about the MetaARPA membership level| |''mil''|gives information on how the validation process can be waived for those on active military duty| |''music''|prints out information about purchasing the SDF music compilations| |''order''|outdated command; now consists of a pointer to the store on SDF's website| |''software''|lists the software packages available to the various membership levels| |''sticker''|prints information on obtaining an SDF bumper sticker| |''twenex''|prints out summaries of (most of) the user-contributed software in /sys/sdf/bin| |''unix''|same as commands| |''vhost''|prints out information about the VHOST membership| |''vpn''|prints out information about the VPN membership| ==== Inter-User Communication & Social Networking ==== ^Command^ Description ((//The table was merged from [[http://sdf.org/?tutorials/sdf_specific_commands|SDF Specific Commands]]//.))^ |''bboard''|bulletin board system for SDF| |''com'' (//a.k.a. commode//)|inter-user chat system for SDF| |''guestbook''|sign or view the guestbook| |''happening''|submit an anonymous journal entry or view a random entry| |''helpdesk''|request help from & give help to other SDF users| |''mesg''|send messages to other users| |''notes''|leave urgent notes for other users| |''profiles''|set up a profile for viewing by other SDF users| ==== Account Management Commands ==== ^Command^ Description ((//The table was merged from [[http://sdf.org/?tutorials/sdf_specific_commands|SDF Specific Commands]]//.))^ |''addlink''|publish your website; invoked by mkhomepg| |''bksp''|set your backspace key| |''greylist''|toggle greylisting for your e-mail address(es) (VPM membership required)| |''maint''|change your password, shell, & contact information| |''mdns''|assign a domain name to a dynamic IP address (MetaARPA membership required); also available as “udns”| |''metaarray''|For MetaARPA members. This will first generate a random login password for your MetaArray account followed by a random database password sent via local e-mail, if you have a DBA membership. If you ever forget your MetaArray password or your MetaArray MySQL password, this will reset it.| |''[[the_metaarray#services_and_features|mkcron]]''|set up & manage cronjobs (MetaARPA ((//Use 'crontab -e' to edit your [[the_metaarray#services_and_features|crontab]]//.)) membership required)| |''mkfinger''|control what information to display for finger requests from remote hosts| |''mkgopher''|set up a gopherspace on SDF| |''mkhomepg''|set up a website on SDF| |''mkvhost''|create & maintain DNS and/or VHOST membership features| |''mkvpm''|manage virtual POP3 mailboxes (VPM membership required)| |''motd''|manage MOTD membership| |''mypasswd''|change your MySQL password.| |''phlog''|list (or delist) your Gopher blog on SDF's registry of phlogs| |''reset-mysql''|resets your MySQL password and sends you a new one via local mail.| |''setdialup''|manage DIALUP membership| |''setgrp''|add & remove users to & from your personal group (MetaARPA membership required)| |''[[the_metaarray#services_and_features|setvmail]]''|toggle e-mail addresses at various SDF domains (MetaARPA ((//Put '**$LOGNAME@ma.sdf.org**' in your .forward on the SDF Cluster//.)) membership required)| |''setvpn''|configure your PPTP VPN login on SDF (VPN membership required)| |''startsql''|set up a MySQL database (DBA membership required)| |''tweak''|redistribute your file storage quotas (TWEAK membership required)| |''udns''|same as mdns| |''vpmclear''|clear out a virtual POP3 mailbox (VPM membership required)| ==== Account Information ==== ^Command^ Description ((//The table was merged from [[http://sdf.org/?tutorials/sdf_specific_commands|SDF Specific Commands]]//.))^ |''disk''|display filesystem usage for your home directory, mail spool, gopherspace, & webspace| |''domains''|list the SDF domains available to you for webhosting & e-mail addresses| |''dues''|give details on your membership dues| |''expire''|show how long until your account expires (pre-validated users only)| |''vpmstat''|display information about your virtual POP3 mailboxes (VPM membership required)| |''vpnstats''|view VPN usage statistics (VPN membership required)| |''webquota''|show web transfer quotas for your website| ==== User Information ==== ^Command^ Description ((//The table was merged from [[http://sdf.org/?tutorials/sdf_specific_commands|SDF Specific Commands]]//.))^ |''online''|prints the amount of time that the given user (or yourself, if none is given) has spent logged in today; does not work correctly| |''sentry''|prints notices of logins & logouts on the system| |''uinfo''|print the date & time when the given user joined SDF & the various membership levels| |''url''|print the URL at which the given SDF user's website is located| ==== Gallery Commands ==== ^Command^ Description ((//The table was merged from [[http://sdf.org/?tutorials/sdf_specific_commands|SDF Specific Commands]]//.))^ |''artgallery''|add photography & artwork to the SDF art gallery| |''astrogallery''|add astronomical photographs to the astro gallery| |''deskshots''|add a picture of your computer desktop to the deskshots gallery| |''patches''|add pictures of SDF 20th anniversary patches to the patches gallery| |''sdfers''|add a picture of yourself to the SDF member photos gallery| |''stickers''|add pictures of SDF stickers to the SDF stickers gallery| |''vintage''|add a picture of a vintage computer to the vintage computers gallery| ==== Other ==== ^Command^ Description ((//The table was merged from [[http://sdf.org/?tutorials/sdf_specific_commands|SDF Specific Commands]]//.))^ |''due''| (delete, undelete, expunge) two-step file deletion for Unix machines. Currently, this program doesnot actually seem to be installed, but its source is available in /sys/sdf/src/due.| |''freeirc''|allows non-ARPA members to use IRC on the weekend| |''game-review''|submit a review for a game on ascii-games.org| |''instruct''|manage student shell accounts (INSTRUCTOR membership required)| |''mkgallery''|produce a thumbnail gallery page for the given images| |''mud''|telnet to SDFmud| |''nospam''|defers obvious spam messages to separate files; run nospam -i for more information| |''oneliner''|print a random line by another SDF member, or add your own| |**''pledge''**|please pledge money to the SDF Public Access UNIX System| |''psh''|the restricted shell used by pre-validated SDF accounts| |''quote''|display the current price for a given stock; does not seem to currently be working properly| |''smj''|print a random quote from the SDF sysadmin| |''surl''|SDF's URL shortening service| |''teach''|fill out a survey about virtual classes taught on SDF machines| |''thxmoo''|a MOO based around the world of THX-1138| |''uinfo''|account information for a given user or yourself| |''upload''|wrapper around rz for uploading files| |''url''|show the url for yourself or a given user| |''vote''|vote on a currently open SDF ballot (ARPA membership required)| ^Credit:^ |Much of this //SDF Specific Commands// list was pulled from jwodder's reference, http://jwodder.freeshell.org/sdf/commands.html; he deserves a //huge thanks// for putting this list together.| And of course there are the online tutorials that you are reading right now! * The top level page for this wiki is [[start]]. * The top level page for the existing HTML tutorials is http://sdf.org/index.cgi?tutorials. ---- [[http://sdf.org/?tutorials/findinghelp|Finding help]] and [[http://sdf.org/?tutorials/sdf_specific_commands|SDF Specific Commands]] - traditional links (using [[wp>Revision_Control_System|RCS]])\\ This wiki page was reviewed with the Plan 9 [[plan9front_-_acme_sam_abaco_mothra_and_man#abaco|abaco]], and [[plan9front_-_acme_sam_abaco_mothra_and_man#mothra|mothra]], browsers.