Linux Shell腳本_學習筆記1_自動化運維基石_寫第一支Shell腳本程式
Shell在英文意思是指 貝殼、(椰子的)外殼
Linux Shell
A linux shell is a special-purpose program designed to read commands typed by a user and execute appropriate programs in response to those commands.
是用來提供一種命令列介面(CLI / Common Line Interface)
供我們做一系列與系統操作相關的命令。
最早起源 1960年代 路易斯.普讚(Louis Pouzin) 這位法國人
他寫了一種程式 叫 "RunCom"
60年代那時 計算機電腦 操作是非常繁瑣的
透過其開發的此程式去簡化這些繁瑣操作
截自: http://www.bogotobogo.com/Linux/linux_tips2_bash.php
Linux Shell 歷史與版本
第一個 --> 1971年 Bell Lab Thompson shell : Unix Shell
第二個 --> 1978年 Bell Lab Bourne shell :Standard Unix Shell
Linux發行版默認shell --> Bash Shell (Bourne Again shell)
其他版本shell : ash , korn , tcsh , zsh , dash(ubuntu )
我們可透過 Shell 腳本去編寫自定義的命令列集
將手動操作程式自動化
自動去執行日常例行事務操作
來達到所謂日常系統自動化管理
==============================================================
在此我是用 CentOS 7 作業系統來演示
可以用 virtual box 自行去搭建學習環境
PART 1.生成一支shell script
Step1. 建立
於當前使用者家目錄底下
首先建立一個目錄名為 shellscript
使用 touch 去新建空文檔
Step2. 撰寫 (使用 nano / vim / gedit)
這裡使用 vim 去進行 shell script 的撰寫
那 vim 文檔名 進去後
在輸入 i 切換至 insert 模式(下方會顯示 insert 字眼)
輸入 hello world
由於我們要生成的是shell腳本因此
請修改輸入
於開頭部分多增加
#!/bin/bash
echo 我們想顯示的字群
按下 esc 跳出 insert mode
之後我們要存檔
shift 按著不放
敲打輸入 冒號 : 然後 wq --> 代表先寫入再關閉跳出
:wq
此時用 cat 查看確實有寫進檔案中
PART 2.執行shell script
那這時你可能會覺得 我是不是可以直接輸入此檔案名稱
他就能執行了呢
結果
由於 此時環境變數並未設置因此根本還不認得此檔案(指令)
因此請改成
./myShellScript
於當前所在目錄下的這份檔案
此時我們發覺有權限問題阻擋
因此可以嘗試 ll
預設生成的檔案 於 Linux發行版 CentOS
被定義為
1 | -rw-rw-r-- |
Linux檔案中基本權限共有九個
分別是owner/group/others三種身份
各有各自的read/write/execute權限
r:4 w:2 x:1
所以透過 ll指令所看到的這串資訊
-rw-rw-r--
也等於 權限數字群模式下此結果
owner(user) group others
[4+2+0] [4+2+0] [4+0+0] ----> 664代表此時 user部分可讀也可寫但是不能執行
因此下指令
chmode u+x
此時就會發覺已經變為 綠色 則代表
已轉為擁有可執行之權限
即可執行我們所撰寫的第一支 shell腳本
總結:
第一步 創建腳本空文件並編寫所想執行相關的命令集(腳本)
第二步 要修改權限 多添加執行權獻給 user(owner)
藉由上述我們已經有經驗
再多寫加法的shell script
touch 生成一個addScript
用vim去撰寫如下內容
記得開頭需有 #!/bin/bash
才可定義此份文件 為 Bash腳本型態
一樣記得改執行權限
這樣子我們就完成簡單的 shell script 腳本撰寫
這個工作中十分常會用到的技能基礎了
留言
張貼留言