分页: 1 / 1
shell编程问题
发表于 : 2009-04-20 16:08
由 peng530
题目要求用基本sh来实现,我用了awk算不算阿
#!/bin/bash
awk '{
total = 0
j = 0
max = $1
min = $1
for(i = 1; i <= NF; i++)
{
j++
total+=$i
if(max < $i)
max = $i
if(min > $i)
min = $i
}
print "Everage value:"total/j
print "min:"min
print "max:"max
}' < $1
还有我想问下上面得用csh怎么弄?谢谢
Re: shell编程问题
发表于 : 2009-04-20 19:08
由 hellojinjie
当然算了,awk 脚本可没有 #!/bin/bash 这一行的。
Re: shell编程问题
发表于 : 2009-04-20 19:21
由 peng530
hellojinjie 写了:当然算了,awk 脚本可没有 #!/bin/bash 这一行的。
最后一行需要得吧,那怎么用csh写阿
Re: shell编程问题
发表于 : 2009-04-20 19:33
由 hellojinjie
代码: 全选
#!/bin/csh
/bin/bash '
awk \'{
total = 0
j = 0
max = $1
min = $1
for(i = 1; i <= NF; i++)
{
j++
total+=$i
if(max < $i)
max = $i
if(min > $i)
min = $i
}
print "Everage value:"total/j
print "min:"min
print "max:"max
}\' < $1'
Re: shell编程问题
发表于 : 2009-04-20 20:02
由 peng530
hellojinjie 写了:代码: 全选
#!/bin/csh
/bin/bash '
awk \'{
total = 0
j = 0
max = $1
min = $1
for(i = 1; i <= NF; i++)
{
j++
total+=$i
if(max < $i)
max = $i
if(min > $i)
min = $i
}
print "Everage value:"total/j
print "min:"min
print "max:"max
}\' < $1'
这样不是还是靠bash么。。。
Re: shell编程问题
发表于 : 2009-04-20 20:05
由 peng530
其实我用csh有一个错误是unmatch '
然后我把程序改成
代码: 全选
#!/bin/csh
awk '{\
total = 0\
j = 0\
max = $1\
min = $1\
for(i = 1; i <= NF; i++)\
{\
j++\
total+=$i\
if(max < $i)\
max = $i\
if(min > $i)\
min = $i\
}\
print "Everage value:"total/j\
print "min:"min \
print "max:"max\
}' < $1
倒是没错误,只是忒难看