home | O'Reilly's CD bookshelfs | FreeBSD | Linux | Cisco | Cisco Exam  


UNIX in a Nutshell: System V Edition

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

switch



switch

Process commands depending on 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 are executed; if string matches pattern2 , the second set of commands are 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 is used to exit 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 . Below 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: suspend UNIX in a Nutshell: System V Edition Next: Reference: time
Reference: suspend Book Index Reference: time

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