亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区
Chinaunix
標(biāo)題:
請教如何判斷已經(jīng)到文件尾部
[打印本頁]
作者:
dl318
時間:
2010-04-24 20:46
標(biāo)題:
請教如何判斷已經(jīng)到文件尾部
下面的語句需要判斷是否已經(jīng)到文件尾,請問應(yīng)該怎么增加?我試著在while中增加 將while修改為
while ($1 != "listen" && getline != 0 ) 好像也不好用。
while ($1 != "listen" )
{
print;
getline;
}
作者:
blackold
時間:
2010-04-24 20:49
回復(fù)
1#
dl318
這是什么語句?awk?
作者:
dl318
時間:
2010-04-24 20:54
對,awk的。現(xiàn)在如果listen是最后一個域,就會是死循環(huán),需要增加一個判斷,判斷是否到文件的尾部。
cat $FILE |awk -v listen_name=$1 -v listen_ip=$2
3 '{
if ($1 == "listen" && $2 == listen_name && $3 == listen_ip)
{
print;
getline;
while ($1 != "listen" )
{
print;
getline;
}
exit;
}
}' >> $TMP_FILE
作者:
blackold
時間:
2010-04-24 21:03
回復(fù)
3#
dl318
你想做什么?對最后一行處理?
作者:
dl318
時間:
2010-04-24 21:19
只是將記錄取出來放到一個臨時文件中。類似下面的記錄在文件的最后,如果不判斷是否已經(jīng)到文件尾,那么就一直取文件寫臨時文件,死循環(huán)了。
listen test 192.168.0.1 8091
..........
..........
...........
作者:
blackold
時間:
2010-04-24 21:25
取完了就結(jié)束了,還會死循環(huán)?
你上面的是awk腳本還是在命令行上直接執(zhí)行?
作者:
dl318
時間:
2010-04-24 21:29
我是在shell中執(zhí)行的。
樓上的有QQ號嗎?我的QQ63579028
作者:
blackold
時間:
2010-04-24 21:49
回復(fù)
7#
dl318
樓上的學(xué)過禮儀沒有?
作者:
blackold
時間:
2010-04-24 21:58
回復(fù)
7#
dl318
如果在命令行上運行,cat $FILE |awk -v listen_name=$1 -v listen_ip=$2
3 中的$1 $2 $3 $FILE的值是什么?
作者:
dl318
時間:
2010-04-24 22:02
$FILE :
listen test 192.168.0.1:8080
balance roundrobin
option forwardfor
option ssl-hello-chk
server web1 192.168.10.10:9090 weight 1 maxconn 5000 CHECK
$1 :test $2:192.168.0.1 $3 : 8080
作者:
blackold
時間:
2010-04-24 22:08
回復(fù)
10#
dl318
看你的貼子很痛苦,看不懂。
你是說你在執(zhí)行命令之前,預(yù)先設(shè)置了變量$1 $2 ...?
作者:
Shell_HAT
時間:
2010-04-24 22:16
原始文件的內(nèi)容是什么?awk處理之后希望的結(jié)果是什么?
作者:
dl318
時間:
2010-04-24 22:24
原文件內(nèi)容如下,希望通過輸入 名稱(test、test2......) IP(192.168.0.10 ...) port(8888....) 在下面的文件中找到對應(yīng)的,然后輸出到一個文件中。
比如 ./a.sh test2 192.168.0.9 8080 希望輸出的文件是 listen test2 192.168.0.9:8080那一段。
a.sh內(nèi)容:(如果listen這個域在文件的最后,現(xiàn)在輸出的文件就是死循環(huán),一直取最后一行)
cat ./test.txt |awk -v listen_name=$1 -v listen_ip=$tmp '{
if ($1 == "listen" && $2 == listen_name && $3 == listen_ip)
{
print;
getline;
while ($1 != "listen" )
{
print;
getline;
}
exit;
}
}' >>./tmp.cfg
原文件內(nèi)容:
listen test 192.168.0.10:8888
balance roundrobin
option forwardfor
# option ssl-hello-chk
server web1 192.168.0.100:8091 weight 1 maxconn 5000 check
server web1 192.168.0.101:8091 weight 1 maxconn 5000 check
listen test2 192.168.0.9:8080
balance roundrobin
option forwardfor
option ssl-hello-chk
server web1 192.168.0.150:9090 weight 1 maxconn 5000 CHECK
作者:
vitas333_cu
時間:
2010-04-24 23:16
感覺好麻煩啊!!!!!!!!!!!!!!
去掉 循環(huán)... 以后少用循環(huán),, 能用數(shù)組 函數(shù) 就是最好的效率... 循環(huán) 盡量少用!!!
要用也用優(yōu)化過的....
看了頭大...
把 結(jié)果說出來, 以及 你自己的實現(xiàn) 方法 , 看你的 代碼 會吐血...
歡迎光臨 Chinaunix (http://www.72891.cn/)
Powered by Discuz! X3.2