我得到了一個有兩列的文件,並且想要在bash中寫一個for循環,該循環從第一列中取出值,將其減去3並將其乘以第二列中的相應值。 然後將所有值一起添加。For循環遍歷一個文件 - 多個條件
的文件看上去例如像這樣:
1 3
2 5
7 8
4 30
那麼我想一個循環的作用:
1-3 * 3
+ 2-3*5
+ 7-3*8
+ 4-3*30
我已經一個for循環看起來像這樣:
for (p in $(awk '{ print $1; }' file.txt)
do
total=$(echo $total+($p-3) | bc)
((count++))
done
echo " $total" | bc > file2.txt
這有效。但是我能做些什麼來包含與文件另一列的乘法?
以下想法行不通:
for (p in $(awk '{ print $1; }' file.txt) && k in $(awk '{ print $2; }' file.txt)).
'的awk「{總+ =($ 1 - 3 )* $ 2} END {print total}'file.txt' – Phylogenesis
如果您不使用圓括號,說明與計算不匹配...'(1-3)* 3!= 1-3 * 3' – karakfa
當然是的;) – Dontwastetime