问题
单项选择题
下列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。