问题 单项选择题

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

if [ (26) =1]

then

cp (27) $HOME/userl

fi

vi (27)

exit 0

(27)处填()。

A.$1

B.#1

C.$0

D.$$

答案

参考答案:A

解析:

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

选择题
选择题