next up previous contents
Next: awk 工具 Up: sed 工具 Previous: sed 與正規表示法   Contents

實機練習題

  1. 共同要求:
    1. 在家目錄下建立 zzz 目錄。
    2. 切換工作目錄到 zzz,所有練習腳本皆存在此目錄。
    3. 腳本必須可執行。
  2. 練習題
    1. 下載檔案 man.conf,寫一腳本 sed1.sh 以 sed 處理 man.conf 執行以下動作,所有結果依序累加到檔案 sed1-result,不要做任何的更動。
      1. 刪除 50 至 120 行。
      2. 第 63 行後增加三行。
        123ASD
        KJH983
        apem34kq98
        
      3. 第 30 至 145 行取代成:
        abcdefgh
        9876543
        3333333
        
      4. 只列出第 103 至 120 行。
      5. 刪除註解行及空白行。
      6. 第 17 行至最後一行刪除,且將 man 取代成 SSEEDD。
    2. 下載檔案 man.conf,使用 sed 處理 man.conf 檔,將以下 sed 要執行的動作寫在 sed2.src,再寫一腳本 sed2.sh 執行 sed 時以 -f 選項指定 sed2.src,並將結果存成 sed2-result,不要做任何的更動。
      1. 刪除 5 至 6 行。
      2. 第 33 行後增加二行。
        BBKJH983
        Capem34kq98
        
      3. 第 40 至 45 行取代成:
        abcdefgh
        9876543
        3333333
        
      4. 列出第 3 至 142 行。
      5. 刪除註解行及空白行。
      6. 第 102 行至最後一行刪除
      7. 將 man 取代成 SSEEDD。
    3. 下載檔案 re3.txt,寫一腳本 sed3.sh 用 sed 轉換 re3.txt 中的算術式。
      1. re3.txt 的算術式格式:(a,b,X),其中 a b 是正負數字,X 是 +-*/ 加減乘除運算子。
      2. (a,b,X) 取代成 aXb=
      3. 轉換後若算術式中減負數 (--),就再取代成 +
      4. 轉換後若算術式中加負數 (+-),就再取代成 -
      5. 結果存成 sed3-result,不要做任何的更動。
    4. 下載檔案 gradelist.txt,寫一腳本 sed4.sh,要求如下:
      1. 使用 sed, tr 命令,配合正規表示法、管線處理。
      2. 將 gradelist.txt 轉換成字典陣列需要的格式,名字及成績都用雙括號括起來,行尾的空白也刪除。
      3. 輸出轉換後的結果導向到 gradedict.txt。


2019-06-17