用awk拆解config file - Linux

Isla avatar
By Isla
at 2012-12-04T15:43

Table of Contents

$ cat test.config
<videoin_c0_text>
Dog
<videoin_c0_color>
1
<videoin_c0_s0_resolution>
320x240
<videoin_c0_imprinttimestamp>
1

$ cat test.awk
BEGIN { prefix="http://172.16.0.82/cgi-bin/admin/setparam.cgi?" }
/<videoin/ { cmd=substr($1, 2, length($1)-2) }
!/<videoin/ { printf "%s%s=%s\n", prefix,cmd,$1 }

$ awk -f test.awk test.conf
http://172.16.0.82/cgi-bin/admin/setparam.cgi?videoin_c0_text=Dog
http://172.16.0.82/cgi-bin/admin/setparam.cgi?videoin_c0_color=1
http://172.16.0.82/cgi-bin/admin/setparam.cgi?videoin_c0_s0_resolution=320x240
http://172.16.0.82/cgi-bin/admin/setparam.cgi?videoin_c0_imprinttimestamp=1


This one is for gawk. Don't make sure nawk workable.
$ cat test1.awk
BEGIN { prefix="http://172.16.0.82/cgi-bin/admin/setparam.cgi?" }
/videoin/ { gsub( /<|>/, ""); cmd=$1 }
!/videoin/ { printf "%s%s=%s\n", prefix,cmd,$1 }

※ 引述《richer30 (我不是納豆)》之銘言:
: Linux菜鳥請想問大家
: 該如何用awk拆解這個config file:
: <videoin_c0_text>
: Dog
: <videoin_c0_color>
: 1
: <videoin_c0_s0_resolution>
: 320x240
: <videoin_c0_imprinttimestamp>
: 1
: 然後把將這些指命print出下列型式
: http://172.16.0.82/cgi-bin/admin/setparam.cgi?videoin_c0_text=Dog
: http://172.16.0.82/cgi-bin/admin/setparam.cgi?videoin_c0_color=1
: http://172.16.0.82/cgi-bin/admin/setparam.cgi?videoin_c0_s0_resolution=320x240
: http://172.16.0.82/cgi-bin/admin/setparam.cgi?videoin_c0_imprinttimestamp=1
: 謝謝!!~


※ 編輯: dyoll 來自: 111.254.208.182 (12/05 02:04)

Tags: Linux

All Comments

Apache mod_proxy有轉址長度的限制嗎?

Hazel avatar
By Hazel
at 2012-12-04T10:44
各位好: 目前小弟透過mod_proxy作為R-proxy區隔內外網段, 網站功能經測試一切都相當正常, 但是在使用Google openid進行認證時, 由內網段直接連線主機認證OK, 但是只要透過外網mod_proxy連結認證頁就會卡住不動, 然後沒有任何訊息只在log中出現Server error 50 ...

terminal顯示位置占的很長

Todd Johnson avatar
By Todd Johnson
at 2012-12-04T10:33
想問一下 我用ubuntu的terminal時 有時候要進到很深的資料夾 資料夾的名稱又很長 不知道有沒有辦法設定讓它就顯示最後一個資料夾 或是自動換行 讓輸入游標不要在太後面的位置 - ...

新手git的幾個問題,麻煩各位前輩了!

Hedda avatar
By Hedda
at 2012-12-04T07:58
先聲明我也是新手 提供的方法若有錯還請見諒並不吝指正 ※ 引述《PTTLSboy (阿銫)》之銘言: : 我是在win7電腦裡安裝msysgit : 1.請問如果同事沒用GIT,整合時要怎麼用GIT合併? : 是不是要先將檔案copy到我電腦,然候初始一個repo,但接下來我就不會了 若已經將檔案copy ...

可作筆記的電子書(ex: mobi, epub)閱讀器

Madame avatar
By Madame
at 2012-12-04T07:49
請問有哪個電子書閱讀器 可以在Ubuntu打開epub or mobi檔案 並且可以在上面作筆記、畫重點(highlight function)? 有試著用calibre轉成pdf檔 但格式會跑掉 (目前我用ebook-viewer 一切都很好 但似乎不能修改檔案...) 謝謝! - ...

新手git的幾個問題,麻煩各位前輩了!

Eden avatar
By Eden
at 2012-12-04T00:45
我是在win7電腦裡安裝msysgit 1.請問如果同事沒用GIT,整合時要怎麼用GIT合併? 是不是要先將檔案copy到我電腦,然候初始一個repo,但接下來我就不會了 怎麼試都沒辦法將我的repo跟他的repo合併,麻煩各位大大了!! 版本控制GIT 這本翻譯書,教的真的看不太懂說atat.. ...