UNIX in a Nutshell: System V Edition

UNIX in a Nutshell: System V EditionSearch this book
Previous: Reference: suspendChapter 5
The C Shell
Next: Reference: time
 

switch

switch

Process commands depending on the value of a variable. When you need to handle more than three choices, switch is a useful alternative to an if-then-else statement. If the string variable matches pattern1, the first set of commands is executed; if string matches pattern2, the second set of commands is executed; and so on. If no patterns match, execute commands under the default case. string can be specified using command substitution, variable substitution, or filename expansion. Patterns can be specified using pattern-matching symbols *, ?, and [ ]. breaksw exits the switch after commands are executed. If breaksw is omitted (which is rarely done), the switch continues to execute another set of commands until it reaches a breaksw or endsw. Here is the general syntax of switch, side-by-side with an example that processes the first command-line argument.

switch (string)    switch ($argv[1])
  case pattern1:      case -[nN]:
      commands            nroff $file | lp
      breaksw             breaksw
  case pattern2:      case -[Pp]:
      commands            pr $file | lp
      breaksw             breaksw
  case pattern3:      case -[Mm]:
      commands            more $file
      breaksw             breaksw
      .                case -[Ss]:
      .                    sort $file
      .                    breaksw
  default:             default:
      commands             echo "Error-no such option"
                           exit 1
      breaksw              breaksw
endsw                 endsw


Previous: Reference: suspendUNIX in a Nutshell: System V EditionNext: Reference: time
Reference: suspendBook IndexReference: time

The UNIX CD Bookshelf NavigationThe UNIX CD BookshelfUNIX Power ToolsUNIX in a NutshellLearning the vi Editorsed & awkLearning the Korn ShellLearning the UNIX Operating System