Shell指令碼程式設計入門

2022-01-22 17:45:59 字數 1076 閱讀 6743

最近在學習shell指令碼,兩個地方值得注意。

1. shell中的運算

a=7b=8

let c=a+b

c=$[a+b]

c=$((a+b))

c=`expr $a + $b`    //``等價於$()

參考:03 linux shell 變數 數學 運算

2. shell中的exec和重定向

我寫了乙個簡單的指令碼copy.sh,**如下

#! /bin/bash 

# read from $

1 and write to $2

if [ $# -ne 2

]then

echo

"usage:$0 inputfile outputfile"fi

inputfile=$1

outputfile=$2

exec

6<&0

exec

<$inputfile

let count=0

while

read line

do((count++))

echo $line >>$outputfile

if [ $? -ne 0

]

then

echo

"error in writing to file $outputfile"fi

done

echo

"number of lines: $count

"echo

"done

"exec

0<&6

6<&-

部分語句解釋如下:

exec 6<&0      # 將檔案描述符6與stdin關聯

exec < $inputfile    # 用inputfile替代stdin

exec 0<&6 6<&-     # 從檔案描述符6中恢復stdin,並關閉檔案描述符6

參考:shell script examples

shell指令碼程式設計入門

運維工程師 shell指令碼程式設計 shell 命令解析器 用於訪問核心 作用 命令解析 呼叫相應功能 首行 usr bin sh 指定解析器 前為未指定解析器,使用預設解析器 用處 自動化運維 用乙個步驟代替別人的十幾個步驟 使用指令碼 實現自動化 機器代替自己來做一些操作 s 件中需要 注發布...

Shell指令碼程式設計入門(一)

最近在學shell,記錄一下。if語句的使用 1.判斷兩個引數大小 bin sh a test about if statement a 10 b 20 if a eq b then echo parameter a is equal to parameter b elif a le b then ...

Shell指令碼程式設計學習入門

shell起源於unix,是unix和linux通訊的東西 使用者和核心之間的 叫做shell。shell除了能解釋使用者輸入的命令,把它傳遞給核心,還可以 1.呼叫其他程式,給其他程式傳遞資料或引數,並獲取程式的處理結果 2.在多個程式之間傳遞資料,把乙個程式的輸出作為另乙個程式的輸入 3.she...