close

Windowslinuxscript

有點相似但是因為一些語法上限制

導致寫法上還是會有蠻大差異

筆記一下底下的情況在windowslinux的寫法

A.txt這個file裡面判斷式是否Hello這個字串出現

是的話執行成功函數pass(function)

失敗的話執行另外一個函數fail(function)

 

Windows :

find "Hello" A.txt

if errorlevel 1 goto fail_fun

pass_fun

 

: fail_fun

Echo Fail

:pass_fun

Echo Pass

 

windows下搜尋字串的指令為 find

如果找的到則會回傳 0(true)

反之則會回傳 1 (false)

但是在我實際的實驗

發現 if errorlevel 0 goto 這個用法

雖然符合語法

但是實際上卻不能使用

因此只好反過來先用if errorlevel 1 goto去判斷

 

另外windowsfunction

:開頭作為命名 這標記讓我一開始頗不習慣

而到function則是用goto指令

 

Linux

if grep -q "Hellp" A.txt; then

      pass_fun

 else

      fail_fun

 fi

 

pass_fun ()

{

 echo pass

}

 

fail_fun ()

{

echo pass

}

 

Linux下搜尋字串的指令為 grep

使用參數-q 作用是回傳是否能找地此字串的判斷值

(一邊grep的用法是印出所有相關字串在螢幕上)

在找的到字串的情況下會回傳 0(true)

反之則會回傳 1 (false)

 

另外linuxfunction

則是直接在if後面打上function名稱即可

 

arrow
arrow
    創作者介紹
    創作者 Kim 的頭像
    Kim

    Kim space

    Kim 發表在 痞客邦 留言(0) 人氣()