关于几道shell的编程题,还请哪位大人帮忙,谢谢

关于几道shell的编程题,还请哪位大人帮忙,谢谢

1:
    接收用户的参数n,m 打印出直角梯形
    如:输入2  4
     * *
     * * *
     * * * *


    2:
         计算某个目录下(不包括子目录)所有文本文件的总行数。
         如:某个目录下有三个文本文件文件1.txt,2.txt,3.txt, 分别是3行,20行,19行.那么统计结果应该是42行。
        (参见命令wc)


   3:
    读/etc/rc.d/init.d/或其他目录下的某个shell脚本,并加以分析。      
1:
接收用户的参数n,m 打印出直角梯形
如:输入2 4
* *
* * *
* * * *
#!/bin/bash
E_ARGCOUNT=100
[ ! $# -eq 2 ] &&
{
  echo "Usage: `basename $0` [0-9] [0-9]"
  exit $E_ARGCOUNT
}
a=$1
b=$2
[ $a -gt $b ] && { b=$1 ; a=$2; }
for (( i=$a; i<=$b; i++ ))
do
for (( j=0;j<$i; j++ ))
do
  echo -n "* "
done
echo
done
exit 0


2:
计算某个目录下(不包括子目录)所有文本文件的总行数。
如:某个目录下有三个文本文件文件1.txt,2.txt,3.txt, 分别是3行,20行,19行.那么统计结果应该是42行。
(参见命令wc)
#!/bin/bash
count=0
pa=( `wc -l *.txt | awk '{print $1}'` )
for (( i=0; i<${#pa[@]}; i++ ))
do
let "count+=${pa}"
done
echo -n "total number of lines in the directory is "
echo $count

3:
读/etc/rc.d/init.d/或其他目录下的某个shell脚本,并加以分析。
???      
链接:[thread=108834]发贴必修课[/thread]