Re: [問題] bash問題請教~
推文不好回
你的for寫的方式怪怪的
我查了一下bash的for用法,跟你不太一樣
回歸正題
你的問題出在傳遞給第一個awk的參數
你使用"{print $i}",這樣會導致$這個符號無法傳遞給awk
我改成用'單引號之後包夾$i變數
for ((i=60;i<=62;i=i+2))
do
cat aa|awk -F'>' '{print $'$i'}'|awk -F'<' '{print $1}'
done
※ 引述《piimaila (肥仔)》之銘言:
: 標題: [問題] bash問題請教~
: 時間: Mon Apr 23 16:34:26 2012
:
: 請問各位大大
: 我的shell如下
:
: cat aa|awk -F'>' '{print $60}'
: cat aa|awk -F'>' '{print $62}'
: cat aa|awk -F'>' '{print $64}'
:
: 而如果我想要用迴圈 則awk內的數字就要自動加
: 可是
: 如果我使用
: for i in {60..62..2}
: do
: cat aa|awk -F'>' "{print $i}"|awk -F'<' '{print $1}'
: done
: echo "==============="
: cat aa|awk -F'>' '{print $60}'|awk -F'<' '{print $1}'
: cat aa|awk -F'>' '{print $62}'|awk -F'<' '{print $1}'
: exit
:
:
: 執行結果為
:
: 60
: 62
: ================
: 31.29
: 31.35
:
: 分隔線前後表現卻不相同
: 我要如何寫 才能夠使迴圈內的表現 和迴圈外的表現一致呢?
:
: 謝謝大家
:
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 60.248.18.139
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.67.49.191
推
04/24 13:20, , 1F
04/24 13:20, 1F
→
04/24 16:35, , 2F
04/24 16:35, 2F
→
04/24 16:35, , 3F
04/24 16:35, 3F
討論串 (同標題文章)