我已经得到了下面的代码来做我需要它做的一切,但是我对如何从文件中剪切它们后添加年龄感到困惑。我想我错过了一些简单的东西,但不断得到最后一行添加的输出。谢谢你的帮助!!
#!/bin/bash
wget --user="user" --password= ftp://"address"/pub/personfile.txt > log2.out 2>&1
filename = 'personfile.txt'
n=1
while read line; do
echo "$n $line"
n=$((n+1))
done < $filename
total=0;
age=0;
filename='personfile.txt'
n=1
while read line; do
age=$(echo $line | cut -d'|' -f 3)
total=$(($total+$age))
echo="$total"
done < $filename
输出应该是所有年龄的总和,它会这样做,但会逐行添加,而不是将所有年龄加在一起。
当你似乎只是试图理解bash中的添加…
((total=$total+$age))
应该和((total+=age))
一样工作(可选变量解引用)。
来自高级Bash脚本指南