802.16 IP Telephony Lab會議紀錄 時間:100年03月16日19:00 地點:暨南大學科三館322教室 主講人:王俊祺 紀錄:徐定玲 出席者:吳坤熹老師、王惟綸、王俊祺、李書丞、徐定玲、方湘婷、王雅玲、陳伯岡、陳鈺萍、鐘揮雄、呂佳紋、葉俊克、陳麗雯、 呂冠達、張豈嘉 會議主題:awk指令使用與awk檔撰寫 會議內容: 1. Compute and Print Certain Fileds 2. Selection by Text Content and by Comparsion 3. Arrays in awk 4. Multi-line Record 5. Getting Arguments on Command Line 問題討論: Q1:$awk –f pay1.awk emp.dat,如果沒有-f程式一樣可以執行嗎?(惟綸) Ans:不行,如果沒有-f會找不到檔案。(俊祺) Q2:pay1.awk副檔名一定要awk嗎?(湘婷) Ans:No,在Linux底下沒有附檔名這個概念。(俊祺) Q3: 投影片P.8中 "$1 ~ /^A.*/ { $3 *= 1.05 }" ," . " 和 " * "代表什麼意思? (佳紋) Ans:是regular expression語法," . " 代表 1 個字元," * " 代表 0~多個字元. (俊祺) Q4:在第14頁中,END的角色是什麼? 把END去除會造成什麼結果? (惟綸) Ans:END後的程式片段會在其它程式執行完所有輸入資料後,最後才直接執行。 如果在這個例子中把END去除,則每讀一筆record就會執行兩個for迴圈的程式,即累計資料和印出資料。(俊祺) Q5: 請問FS和RS是什麼?(鈺萍) Ans:FS是一個pattern裡面的資料來切割成欄位單元。 RS 是以一整個列作為一個切割單元。(俊祺) Q6:請問投影片P22,awk範例裡的-vx參數有什麼意義嗎?(雅玲) Ans:這個範例主要是要說,內建參數不會算在要使用的參數上。(俊祺) Q7: 投影片P.25中,ARGC=2是什麼意思? (佳紋) Ans:ARGC代表的是參數的數目,ARGV[ ] 為字串陣列,ARGV[0],ARGV[1],…ARGV[ARGC-1],分別代表命令列上相對應的參數. ARGC=2,awk會以為只有一個資料檔.example: awk –f test1.awk data_file apple orange,執行時 awk 會開啟資料 檔 data_file 以進行處理.不會開啟 apple, orange為檔名的檔案(因為ARGC被改成2)。(俊祺) Q8:p.24如果以p.25的例子為輸入,把ARGC改成2以後,ARGV陣列還是會有四個值嗎?(麗雯) Ans:ARGC、ARGV是一開始讀入指令行就assign好的,所以ARGC被改了以後不會影響ARGV。(老師) 老師建議事項: 1.meeting的題目要早點決定,建議兩個月前就決定。 2.下星期二(3月22號)老師要去開會,所以星期二的課暫停一次。 散會: 結束時間:22:00