unix shell學習筆記 C shell程式設計

2021-08-31 20:00:46 字數 2185 閱讀 8154

shell指令碼由命令和散布其間的注釋組成。

執行指令碼步驟為:

選擇shell

授予執行許可權

執行指令碼

選擇shell,第一行以#!即shbang指明所用的shell直譯器,如:

#!/bin/csh 或者#!/bin/tcsh

授予執行許可權:

% chmod +x myscript

執行指令碼:

% ./myscript 

例子:

通過變數$《讀取使用者輸入。

#!/bin/csh -f 

echo -n "what is your name? "

set name = $<

echo greeting to you, $name.

c shell只支援整數的算術運算

算術運算子:+ - / * % << >>

快捷運算子:+= -= *= /= ++ --

if語句:

if (expression)

command

command

then

command

command

endif

例:

if ($#argv != 1 ) then 

echo "$0 requires an argument"

exit 1

endif

#說明:如果命令列傳入的引數個數($#argv)不等於1,則執行then後面的語句

# 程式以值1退出,表示執行失敗

if/else語句

格式:if (expression) then

command

else

command

endif 

if/else if 語句

格式:if (expression) then

command

command

else if (expression) then

command

command

else

command

endif

退出狀態和變數status

執行成功:$status = 0

執行失敗:$status != 0

switch語句

格式:switch (var)

case const1:

command

breaksw

case const2:

command

breaksw

endsw

#! /bin/csh 

echo "select from the following menu:"

cat << eof

1) red

2) green

3) blue

4) exit

eof

set choice = $<

switch ("$choice")

case 1:

echo red is stop.

breaksw

case 2:

echo green is go\!

breaksw

case 3:

echo blue is a feeling...

breaksw

case 4:

exit

breaksw

default:

echo not choice \!\!

endsw

echo good-bye

foreach迴圈

格式:foreach 變數

command

end例:

foreach person (rob bob tim jim)

echo $person

end

while迴圈

格式:

while ()

end 

repeat迴圈

repeat 3 echo hello

hello 

hello

hello   

unix shell學習筆記1

table of contents 1.shell 簡介1.1 shell 種類1.2 shell 對比1.3 詳細特性比較 1.4 shell初始檔案 c shell tc shell bourne shell bash shell korn shell 其中,c shell 和tc shell依...

unix shell學習筆記2

正規表示式 regular expression,re 是一種字元模式,用於在查詢過程中匹配指定的字元。正規表示式元字元 萬用字元 元字元 萬用字元功能 例子匹配物件 行首定位符 hello 匹配以hello 開頭的 行尾定位符 hello 匹配以hello 結束的行 匹配單個字元 l.e 匹配以l...

unix shell學習筆記4

容,處理後,不改變檔案內容。sed options command file s sed options f scriptfile file s command a 在當前行後面加入一行文 本b lable 分支到指令碼中帶有標記的地方,如果分支不存在則分支到指令碼的末 尾c 從模板塊 patter...