1. 定期備份,隨時備份要更改的檔案
| 最重要的是系統要定期備份, 越方便能力越強的系統,其破壞力也越強大。 例如: 如果某個使用者下一個如下的指令要清除一些檔案:
2. 慎重選用適當的工具程式
| | 雖然是條條道路通羅馬,但是各種工具程式各有其特性, 使用者最好瞭解各種工具程式的特性,再據以挑選適當的工具來用。 選用適當的工具會讓你事半功倍,否則可能是自找麻煩。
3. 盡量自動化
| | 只要能自動化就自動化(能偷懶就偷懶),讓shell 負責執行繁瑣的重複性工作。
4. 不要勉強自動化
| | 不要為自動化而自動化,有時候直接用手去做反而更快。
我們所舉的例子中,就有要求使用者進入vi 去做事的, 並非全部交由shell自動去做。 不過,為了磨練shell programming 的技巧,有時候 難免多花點時間找點苦頭吃,也是不錯的。
5. 適時搭配 PC 視窗系統
| | 如果搭配視窗系統去作比較方便時,那就不要硬在Unix上作。 視窗系統絕對有其優點,跟 shell programming 搭配使用 ,將可發揮 相輔相成之功效。
6. 追求整體時間的節省
|
| 通常在處理一件事,例如資料轉換,或整理照片檔案時,牽涉到眾多的雜事, 諸如輸入資料,編輯輸入檔,反覆執行 script 等,在設計script 時,需注意到各方面都需節省時間,假設一個寫得很好效率很高的script 卻需要花很多時間準備資料,那就得不償失了。相反的,如果追求輸入資料 的方便,卻讓 script 的撰寫礙手礙腳,也是不好。此外,也需顧及維護的 方便性,有時候寫得太過機巧的 script 若無適當的說明,在後日需要維護時,卻很難理解,那不美了。這些觀念, 在軟體工程的課程都有說明,讀者可參考之。 總之,設計 script 時方方面面都需兼顧,追求整體工作時間的節省。 |
---|
#1 Use right tools in right configurations # #1 Keep it simple and stupid # #1 Don't use hand #2a #Don't use hands to do things that can be done efficiently by #the computer. -- Tom Duff #2b #1 Don't use computer #2a #Don't use computer to do things that can be done efficiently #by hand. -- Richard Hill #2b #2 Treat exceptions manually if too much trouble #1 Be familiar with regular expressions #1 Pay special attention to escape sequences |
---|