s h e l l允許將一組命令集或語句形成一個可用塊,這些塊稱為s h e l l函數。函數體。標題是函數名。函數體是函數內的命令集合。標題名應該唯一;如果不是,將會混淆結果,因為腳本在查看調用腳本前將首先搜索函數調用相應的s h e l l。
前面討論e x p r時指出,循環時如果要加入計數,使用此命令。下面使用l s在f o r循環中列出文件及其數目。[root@localhost huangcd]# cat forcount#!/bin/bashcounter=0for file
第二十六章:編寫腳本實用工具 監測磁盤空間需要的功能du,顯示文件和目錄的磁盤使用情況查看一個目錄的大小,我們可以這樣:$ du --max-depth=0 -h android-sdk6.1G android-sdk$ du -sh
第二十七章:shell腳本編程進階監測系統統計數據系統快照報告1.運行時間uptime命令會提供以下基本信息:當前時間系統運行的天數,小時數,分鐘數當前登錄到系統的用戶數1分鐘,5分鐘,15分鐘的平均負載$ uptime 16:20:51 up
在菜單中進行選擇時,最麻煩的工作是必須在選擇後鍵入回車鍵,或顯示“ press any key to continue”。可以使用dd命令解決不鍵入回車符以發送擊鍵序列的問題。dd命令常用於對磁帶或一般的磁帶解壓任務中出現
前面已經講到如何使用特定變量$1,$9向腳本傳遞參數。$#用於統計傳遞參數的個數。可以創建一個usage語句,需要時可通知用戶怎樣以適當的調用參數調用腳本或函數。簡單地說,下述腳本框架控制參數開始與停止。腳本需要兩個參數,如果沒有輸入兩個參數,那
任何腳本都應該能夠創建臨時文件或日志文件。在運行腳本做備份時,最好是保存一個日志文件。這些日志文件通常在文件系統中保留幾周,過時將被刪除。在開發腳本的時候,可能總要創建一些臨時的文件。在正常運行腳本的時候,也要使用臨時文件保存信息,以便作為另外一
shell編程最煩人的一項工作是調試問題。有一些方法可以借鑒,但是最好能在問題出現前防止大部分錯誤,為此應遵循以下規則。需要牢記的一點是當shell打印出一個腳本錯誤後,不要只看那些疑問行。而是要觀察整個相關代碼段。shell不會對錯誤進行精確定
我們在介紹標准輸入和標准輸出以及while循環的時候已經幾次遇到< <的應用。我們學會了如何發送郵件,如何構建一個菜單,不過< <還有很多其他的用法。本章將介紹以下內容:快速創建一個文件。自動進入菜單。ftp傳輸。連接至其
實際上已經用過了許多shell嵌入命令。可能要想什麼是shell嵌入,這些命令是在實際的Bourne shell裡創建而不是存在於/bin或usr/bin目錄裡。嵌入命令比系統裡的相同命令要快。本章內容有:標准的Bourne shell嵌入命令列
在用戶登錄時,系統將會執行/etc/profile文件,根用戶不希望其他普通用戶打斷一進程。他通常通過設置trap來屏蔽信號1、2、3和1 5,然後在用戶讀當天的消息時重新打開這些信號。最後仍然回到屏蔽這些信號的狀態。在編寫腳本時也可以采用類似的
在執行某個命令的時候,有時需要依賴於前一個命令是否執行成功。例如,假設你希望將一個目錄中的文件全部拷貝到另外一個目錄中後,然後刪除源目錄中的全部文件。在刪除之前,你希望能夠確信拷貝成功,否則就有可能丟失所有的文件。如果希望在成功地執行一個命令之後