单选题 下列Shell程序的功能是如果该程序执行时的参数个数为1则将由第一个参数指定的文件复制到/home/user1中,否则用vi打开这个文件。请将这个程序补全。
if [ (23) =1)
then
cp (24) $ HOME/user1
fi
vi (24)
exit 0

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