1. 程式人生 > >bash shell筆記(4)

bash shell筆記(4)

shell指令碼的編寫

1、善用判斷條件  例

test -e /jason && echo "exist" || echo "not exist"

2、另一個判斷符號[]

中括號內的每個元件應用空格隔開,中括號內的常量用雙引號或者單引號設定,例子

格式:   [ "&HOME" == "$MAIL" ] 

例2: read -p "please input (Y/N): " yn

[ "$yn" == "Y" -o "$yn" == "y" ] && echo "ok,continue" && exit 0

[ "$yn" == "N" -o "$yn" == "n" ] && echo "oh,interrupt" && exit 0

echo "sorry,I dont know what is your choise" && exit 0

3、shell指令碼的預設變數

格式如下:

/path/to/srcriptsname opt1 opt2 opt3 ........

 $0                                $1     $2     $3

例子:

#!bin/bash
echo "the script name is $0"
[ -n "$1" ] && echo "the 1st parameter is $1" || exit 0
[ -n "$2" ] && echo "the 1st parameter is $2" || exit 0
[ -n "$3" ] && echo "the 1st parameter is $3" || exit 0

結果:

[email protected]:~/scripts$ sh sh04.sh afa beta thta
the script name is sh04.sh
the 1st parameter is afa
the 1st parameter is beta
the 1st parameter is thta

相關推薦

bash shell筆記4

shell指令碼的編寫1、善用判斷條件  例test -e /jason && echo "exist" || echo "not exist"2、另一個判斷符號[]中括號內的每個元件應用空格隔開,中括號內的常量用雙引號或者單引號設定,例子格式:   [ "&

bash shell筆記2

1、命令別名:alias lm 'ls -al | more'取消命令別名:unalias2、資料流重導向資料流重導向就是將原本輸出到螢幕上的資料,傳輸到檔案或者裝置上。標準輸入:stdin  使用<或<<標準輸出:stdout 使用>或>>

bash shell筆記3

正則表示式:就是處理字串的方法,以行為單位進行字串的處理,通過一些特殊符號的輔助,可以讓使用者輕鬆搜尋/替換某特定字串例如查詢某個檔案內具有的關鍵詞:  grep 'mail' /etc/rc.d/*last | grep root :管道命令grep -n 'the' ja

shell學習筆記4

shell 基礎 筆記 雜記一、 1、利用系統函數模擬實現系統腳本啟動特殊顏色效果 1.1 查看系統函數庫 [root@master4 ~]# ll /etc/init.d/functions -rw-r--r--. 1 root root 13948 Sep 16 2015 /etc/init.d/f

java 筆記4接口

ride ide tex disk static關鍵字 方便 理解 pre 抽象方法 interface USB{ void start(); void stop(); } class C{ public static void work(U

Swift學習筆記4:字符串

min mes 不同的 常用方法 dice 內存空間 全部 there logs 目錄: 初始化 常用方法或屬性 字符串索引 初始化 創建一個空字符串作為初始值: var emptyString = "" // 空字

oracle學習筆記4

linux系統 sta sys 配置 默認 搜索 密碼 多用戶 登錄 4.oracle數據庫的啟動流程   windows操作系統     啟動監聽: lsnrctl start;     啟動數據庫實例:oradim-startup-sid 實例名   linux系統

AngularJs學習筆記4——自定義指令

ref 告訴 ack 生命周期 .com bsp ctrl 參數變量 ng- 對指令的第一印象:它是一個自定義標簽! 先來看一個簡單的指令: <!doctype html> <html ng-app="myApp"> <head>

redis實戰筆記4-第4章 數據安全與性能保障

4.6 特殊 pac 命名 可用 lsp sentinel 樂觀鎖 個人開發 本章主要內容 4.1 將數據持久化至硬盤 4.2 將數據復制至其他機器 4.3 處理系統故障 4.4 Redis事務 4.5 非事務型流水線( non-transactional pipeline

ASP.NET學習筆記4——上傳圖片

bmi guid ted 介紹 dir filename content put ima 說明(2017-10-8 23:03:43): 1. 後面的內容都是一些雜七雜八的,零零碎碎的,之前都直接略過了,不過其實還是挺重要的,這次重新學習要認認真真敲一遍。 2. 明天中午9

Scala語言學習筆記4

method point 強制轉換 參數 logs https fun 強制 n) 高階函數 // 高階函數 map val salaries = Seq(20000, 70000, 40000) val doubleSalary = (x: Int) => x *

寒假學習筆記4

靜態成員 限定 計劃 執行 構造函數 數據 mark 不能 類定義 2018.2.11 類中的常成員 關鍵字const,在類定義中聲明數據成員使用關鍵字限定,聲明時不能初始化。 初始化列表,類中的任何函數都不能對常數據成員賦值,包括構造函數。為構造函數添加初始化列表是對常

java基礎筆記4----數組

adding 類型 說明 spa 初始化 pac align int nbsp 介紹: 數組是一種數據類型,是引用類型,是一塊連續的內存空間,用於存儲和管理相同類型的多個數據。 定義:-- > 數組的聲明方式 先聲明,在開辟內存空間--> int [] a;

C#復習筆記4--C#3:革新寫代碼的方式用智能的編譯器來防錯

靜態 png 字段 tom 父類 保持 int http AI 用智能的編譯器來防錯 本章的主要內容: 自動實現的屬性:編寫由字段直接支持的簡單屬性, 不再顯得臃腫不堪; 隱式類型的局部變量:根據初始值推斷類型,簡化局部變量的聲明; 對象和集合初始化程序:用一個表達式就能

Linux自學筆記4:Linux獲取幫助的命令詳解

Linux獲取幫助的命令詳解 man linux命令幫助的獲取 外部命令:都有一個可執行程序,位於文件系統都目錄下; echo (COMMAND) 內部命令: help COMMAND 外部命令幫助:(1)幫助手冊 COMMAND --help # COMMAND -

C#復習筆記4--C#3:革新寫代碼的方式查詢表達式和LINQ to object

類型 否則 表達 數據集 clas 階段 邏輯 變量 RR 查詢表達式和LINQ to object(上) 本章內容: 流式處理數據和延遲執行序列 標準查詢操作符和查詢表達式轉換 範圍變量和透明標識符 投影、過濾和排序 聯接和分組 選擇要使用的語法 LINQ中的概

C#復習筆記4--C#3:革新寫代碼的方式查詢表達式和LINQ to object

標識 all 麻煩 linq with write mar sel img 查詢表達式和LINQ to object(下) 接下來我們要研究的大部分都會涉及到透明標識符 let子句和透明標識符 let子句不過是引入了一個新的範圍變量。他的值是基於其他範圍變量的。let 標識

python學習筆記4

python函數定義和調用函數就是最基本的一種代碼抽象的方式(python有許多內置函數)調用:要調用一個函數,需要知道函數 的名稱和參數比較函數cmp(x,y)就需要兩個參數,如果x<y,就返回-1,如果x==y,就返回0,如果x>y就返回1數據類型轉換函數,不如int()函數可以把其他數據類型

go語言學習筆記4--容器與字符串的基本概念

都是 empty 知識 nil 來講 java nbsp unicode ... 一、 Slice(切片) package main import ( "fmt" ) //切片,slice func main() { arr := [...]int{1,2,

beego學習筆記4:開發文檔閱讀3

new github model div email true ews mail IV 通過運行 bee new quickstart 來創建新的項目,其結構如下: quickstart |-- conf | `-- app.conf |-- controllers