【发布时间】:2014-09-09 10:48:17
【问题描述】:
这可能很基本,我想读入一个出现文件。
那么程序应该在文件Hendelse.logg中找到所有出现的"CallTilEdb":
然后总结右栏。对于这种情况,它将是 8 + 4 + 16,所以我想要的输出是 28。
我不知道该怎么做,这是我对vistid.sh的了解:
#!/bin/bash
declare -t filename=hendelse.logg
declare -t occurance="$1"
declare -i sumTime=0
while read -r line
do
if [ "$occurance" = $(cut -f1 line) ] #line 10
then
sumTime+=$(cut -f2 line)
fi
done < "$filename"
所以终端中的执行将是
vistid.sh CallTilEdb
但我现在得到的错误是:
/home/user/bin/vistid.sh: 第 10 行: [: 一元运算符预期
【问题讨论】:
-
什么是“发生故障”?
-
@John 我试图清理这个问题,那个词已经消失了。
-
@JohnZwinck 我的意思是写发生 fex。(例如发生)
-
@Tomalak 谢谢 :) 我对 Shell Scripting 很陌生,因此我的术语有点偏离 :P 抱歉。
-
@Patidati:在美式和英式英语中,“feks”和“fex”通常都不能理解为“例如”。人们通常写“例如”、“例如”或“例如”。