csh/C shell scripts: if statement syntax

Conditional expressions give programs life. The ability to branch makes shell scripts powerful. This recipe shows the basic if then else structure for csh, the C shell.


Basic if statement syntax:

if (condition) then
commands
endif

The addition of one or more else keywords offers additional flexibility:

if (condition) then
commands
else if (other condition) then
commands
else
commands
endif

The Conversation

Follow the reactions below and share your own thoughts.

  • Dan

    test for the existence of a variable using
    if ($?LD_LIBRARY_PATH == 0) then
    setenv LD_LIBRARY_PATH /usr/lib;
    endif

    • Dan

      A variation of the above would be:

      if ( ! ${?LD_LIBRARY_PATH} ) then
      setenv LD_LIBRARY_PATH /usr/lib
      endif

      Use the {} around variables as a habit since the variable names can often interfere with shell syntax.

      The semicolon at the end is ignored.

  • Dan

    Without concrete examples of how the syntax is actually used, this is almost useless information.

    • Paul

      Almost? More like completely…

  • Chisimobi

    need more examples

  • Chisim_obi

    need more examples