1. 程式人生 > >關於shell及運維的基本操作

關於shell及運維的基本操作

運維工作:

========================================================

CDN:內容分發系統。快取,每個城市,放置一份程式碼。

負載均衡:

1、不同的請求,nginx代理,請求不同的伺服器。

2、涉及常用的演算法:
        1> 根據不同的IP;
        2> hash
        3> 輪訓演算法

========================================================

告警:

1.curl 工具,request請求,拉取頁面的資料。

定時 curl 一下某個url,有問題就告警。

2. 日誌告警:5分鐘error大於多少次,就告警。

3. 指標告警:cpu使用率大於xxx告警。

4. 業務層面的告警。

========================================================

shell 是運維中的第一工具。

多種shell:

1  .sh 最原始 向他看齊
2. .csh
3. .bash 主流 超級sh
4. .zsh 開發程式設計師喜歡 多數mac使用者使用 .zsh

shell 的內建命令: shell 指令碼程式設計。

echo $?  成功返回0 失敗返回1。一個程式正常執行,返回0,異常執行返回1。

// 先寫一個簡單的指令碼 shell指令碼
.sh 檔案

```
    #! /bin/sh 

    pwd
    ls
    pwd
```
第一行 解析器

ls -l 檢視檔案許可權 ===> 可執行檔案

chmod a+x t1.sh ===> 可執行檔案 然後執行 ./1.sh   或 /bin/sh 1.sh  或 source 1.sh 


pwd: 當前目錄

========================================================

shell 分為環境變數和本地變數

env | grep "dinner"  列印的是環境變數

set | grep "dinner" 列印的是本地變數    

========================================================

*  任意字元
? 任意一個字元
[] 中括號中任意一個字元

========================================================

命令代換:

寫一個指令碼,列印當前時間

DATA=$(date)
echo $DATA

寫一個指令碼,curl 獲取baidu的頁面,重定向到baidu.com

curl "http://www.baidu.com/" > baidu.html

========================================================

test / [  條件判斷  ] 真返回0 假為1

與其他程式語言相反