標籤:shell script
說明一下就是這篇文章不涉及太多配置上的問題,小弟只是用安裝EDM伺服器的例子想寫寫shellscript指令碼編寫方面。
其實註冊這論壇都快4年了,一直都沒好好寫點什麼部落格文章,一來怪自己太懶了,二來自己文筆也比較差,不知道寫點什麼好。
開始寫這篇文章的目的,是想通過部落格的平台和更多人交流,可以認識更多的朋友,覺得現在自己的視野和圈子真的太小太小了。而且希望以後哪天自己回頭看這篇文章,會有更好的想法,會覺得自己的確在進步了,所以將這篇文章定位為日記。
萬事開頭難,先動手吧。總會有方法的。
最近有個需求把EDM服務做到一鍵安裝,而大部分的安裝指令碼一早已經寫好了,只需要整合一下就可以了。
1. 說說指令碼運行環境:
運行系統: CentOS release 6.6 (Final)
查看系統版本命令(適用於RedHat和CentOS):cat /etc/redhat-release
2. 說說所需安裝的軟體和服務:
AMH:一套LNMP/Nginx虛擬機器主機面板。使用的是4.2版本。地址:http://amh.sh/install.htm
PMTA: 全稱PowerMTA,一個SMTP分發郵件的軟體。
地址:http://www.port25.com/powermta/evaluate-now/
OME:全稱Oempro,一款email marketing的工具。地址:http://octeth.com/
S3cmd:一款操作Amazon S3的命令列工具。地址: https://github.com/s3tools/s3cmd
Postfix: 一款MTA(郵件傳輸代理程式)軟體。
3. 說說思維導圖:
一開始我用Xmind簡單寫了個思維導圖。思維導圖上也沒寫很多內容,一直覺得思維導圖應該越簡單越好。當然這個指令碼也是很簡單的,沒有涉及太多邏輯的問題,自然看上去更簡單了。
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/53/D4/wKioL1Rx3MiQ2L_8AAEFS_o3KnQ258.jpg" title="EDM_SERVER_INSTALL.png" alt="wKioL1Rx3MiQ2L_8AAEFS_o3KnQ258.jpg" />
4. 說說命名方式:
函數名稱:大小寫結合,每個單詞頭字母大寫。例如AMH INSTALL我寫成 function AmhInstall。
常量名稱:大寫+底線,每個單詞之前用底線相隔。例如資料庫root密碼的常量我寫成
MYSQL_ROOT_PASSWORD
變數名稱:小寫+底線。
小弟暫時還是盡量把名稱寫全,不用簡寫。雖然代碼會顯得臃腫,但方便自己查看。
5. 說說指令碼開頭:
#!/bin/bash # Created by Clark 2014.11.22# Contact Email: [email protected]# Name: oem_pmta_install.sh# This script is used to install oem + pmta# Version 2.0# 1. AMH install# 2. PMTA install# 3. OEM install# 4. S3cmd install# 5. Postfix install# 6. Cronjob config# 7. Backup config
通常指令碼開頭除了預設的解析器聲明:#!/bin/bash 外,我還會加上編寫日期,連絡方式,指令碼名稱,指令碼用途,指令碼版本等等。
不過指令碼版本控制這個我一直沒處理好。應該將每個版本修改和添加的功能記錄一下。
其實整個指令碼已經寫到能用了,就是還沒有完善,一邊寫這篇東西的時候又有些新想法,然後就轉頭去改指令碼了。暫時寫這麼多,明天繼續吧。
本文出自 “翻滾吧!阿匡” 部落格,請務必保留此出處http://clarklin1989.blog.51cto.com/1165777/1581721
Shell Script編寫日記 -> 一鍵安裝EDM伺服器指令碼整理 (一)