关于Shell Script程序的一些问题!

关于Shell Script程序的一些问题!

我在编写Shell Script程序的时候,有如下的问题请斑竹和高手赐教!
1.Shell Script中有没有注释语句?如果有是怎么写?
2.在我的Shell Script中调用了自己编写的程序,而程序中有多处需要手动输入的地方,如果使用重定向操作符和预先输入的对于程序需要的输入,可以实现将输入一次自动完成!我的问题是如何在预先输入的地方添加注释.(没有注释的我已经执行结束了,我原以为可以直接在我的输入后用!分隔开注释也可以,但是事实证明不行!请高手指教)。我的Shell Script的关键一句是这样写的:

augr.ex << eod
y  (!这个地方如果输入注释执行将出错)
。。。。。
eod

3.在Shell Script中有没有字符串处理的功能?如果有该怎么做?

所有上面的问题我想只用Shell的功能完成!请斑竹和高手赐教!      
shell脚本中有注释
就是
#注释注释。。。
#注释注释。。。

其他的问题我没有看懂。SHELL的字符串处理能力很强,这我可以确定。      
augr.ex << eod
y
。。。。。
eod

的意义是把shell script里面直到 "eod"这个字串的部分作为 augr.ex程序的输入,所以在里面加入注释会影响 augr.ex的运行,除非augr.ex有处理注释的能力。

shell里面处理字符串可以用 grep,sed, awk等流软件。      
多谢两位的热情回复,解决了我的很大的问题.谢谢!

    还有我想知道的关于字符串处理是在编写Shell Script程序的时候,在程序中实现字符串的合并 取子串等操作.比如我的程序中要多次输入多个文件名,而这多个文件名之间的差别仅仅在于它的扩展名不同--比如都是test.*,我想在Shell 程序中直接实现字符串的合并,就是给一个变量使它等于test,然后在我需要的地方通过程序处理将它变成test.in等等.不知这样能不能做?如果能做请详细介绍一下!谢谢!

在此对两位的热情回复,再次感谢!