题目
43,以下关于open Euler内置变量的描述中,哪些选项是正确的A. 0表示shell所有参数B. n表示shell程序(或过程)的第n个位置参数值,n=1.9C. *表示shell程序所有的位置参数组成的字符串D. #表示shell程序的位置参数个数
43,以下关于open Euler内置变量的描述中,哪些选项是正确的
A. 0表示shell所有参数
B. n表示shell程序(或过程)的第n个位置参数值,n=1.9
C. *表示shell程序所有的位置参数组成的字符串
D. #表示shell程序的位置参数个数
题目解答
答案
CD
C. *表示shell程序所有的位置参数组成的字符串
D. #表示shell程序的位置参数个数
C. *表示shell程序所有的位置参数组成的字符串
D. #表示shell程序的位置参数个数
解析
本题考查Shell脚本内置变量的正确用法,需掌握以下核心知识点:
- $0:表示脚本文件名或命令名,而非所有参数;
- $n(n为1-9):表示第n个位置参数;
- **$***:表示所有位置参数组成的字符串(空格分隔);
- $#:表示位置参数的总个数。
破题关键在于区分不同内置变量的含义,尤其注意选项中可能存在的表述错误(如选项B的“n=1.9”表述不规范)。
选项A分析
**$0** 的实际作用是获取脚本文件名或执行命令的名称,而非所有参数。所有参数应通过 **$* 或 $@** 获取,因此选项A错误。
选项B分析
$n(n为1-9)** 表示第n个位置参数,但选项中“n=1.9”的表述不规范,且Shell中位置参数仅支持 **$1 至 $9,因此选项B错误。
选项C分析
**$*** 将所有位置参数合并为一个字符串,各参数以空格分隔(例如:`$1 $2 $3`)。此描述正确,选项C正确。
选项D分析
**$#** 表示位置参数的总个数(例如:`$#` 的值为3时,说明有3个参数)。此描述正确,选项D正确。