问题 单项选择题

下列Shell程序的功能是如果该程序执行时的参数个数为1则将由第一个参数指定的文件复制到/home/user1中,否则用vi打开这个文件。请将这个程序补全。

if [ (23) =1)

then

cp (24) $ HOME/user1

fi

vi (24)

exit 0

(23)处填()。

A.$$

B.$#

C.$*

D.$@

答案

参考答案:B

解析:

[分析]: $$表示当前进程的进程标识号(PID);$#表示命令行上的参数个数,但不包括命令;$*表示命令行上的所有参数值;$@是用双引号引用命令行上的所有参数;$0表示命令的本身;$1~$9表示命令行上的第一到第九个参数。由此可知,第1个空应填写$#,第2个空和第3个空应填写$1。

单项选择题
填空题