C34

C34

(判断题)Shell中的单引号和双引号功能完全相同。()

  • true. 正确
  • false. 错误
  • 正确答案:false
  • 解析:在Shell中,单引号会原样输出所有内容,不进行变量替换和命令替换;而双引号允许变量替换和命令替换,并对部分特殊字符进行转义。因此它们的功能并不完全相同。

(填空题)在Shell中,[填空1]命令可以重新执行刚修改的初始化文件。

  • 正确答案:source 或 .
  • 解析:source​ 命令(也可以用 . 命令)用于在当前Shell环境中执行指定的脚本文件,常用于重新加载配置文件,使修改后的初始化文件立即生效。

(填空题)Shell脚本中,用于读取用户输入的命令是[填空1] 。

  • 正确答案:read
  • 解析:read 命令用于从标准输入读取一行数据,并将其赋值给一个或多个变量,常用于Shell脚本中与用户交互。

(填空题)Shell脚本的第一行通常是[填空1]。

  • 正确答案:#!/bin/bash 或 #!/bin/sh
  • 解析:Shell脚本的第一行通常是指定解释器的路径,例如 #!/bin/bash,这告诉系统使用哪个解释器来执行该脚本。

(多选题)下列哪些是Shell中的特殊变量?( )

  • A. $0
  • B. $#
  • C. $*
  • D. $?
  • 正确答案:A、B、C、D
  • 解析:Shell中的特殊变量包括:$0​ 表示脚本名称,$#​ 表示传递给脚本的参数个数,$*​ 表示所有参数列表,$? 表示上一个命令的退出状态。因此所有选项都是正确的。

(主观题)请简述Shell中重定向操作符>和>>的区别。

  • 正确答案:>​ 用于将命令的输出重定向到文件,如果文件已存在则会覆盖原有内容;>> 用于将命令的输出追加到文件末尾,如果文件不存在则创建新文件,不会覆盖原有内容。
  • 解析:重定向操作符 >​ 和 >>​ 都用于输出重定向,但 >​ 是覆盖写入,而 >> 是追加写入。

(判断题)Shell中的if语句必须以fi结束。()

  • true. 正确
  • false. 错误
  • 正确答案:true
  • 解析:Shell中的if语句使用 if​ 开始,并以 fi 结束,这是Shell脚本的语法规则。

(单选题)Shell中,单引号和双引号的主要区别是( )

  • A. 单引号不允许变量替换
  • B. 双引号不允许变量替换
  • C. 没有区别
  • D. 单引号允许特殊字符转义
  • 正确答案:A
  • 解析:单引号内的所有字符都原样输出,不进行变量替换和命令替换;双引号允许变量替换和命令替换,并对部分特殊字符进行转义。

(单选题)在Shell中,哪个符号用于将命令放在后台运行?( )

  • A. &
  • B. |
  • C. ;
  • D. >
  • 正确答案:A
  • 解析:&​ 符号用于将命令放在后台运行,使其不占用当前终端;|​ 是管道符号,;​ 用于分隔多个命令,> 是输出重定向符号。

(判断题)Shell脚本必须有执行权限才能运行。()

  • true. 正确
  • false. 错误
  • 正确答案:true
  • 解析:Shell脚本需要具有执行权限(例如通过 chmod +x script.sh​ 设置)才能直接运行,否则只能通过指定解释器(如 bash script.sh)来执行。

(填空题)Shell中测试文件是否存在的操作符是[填空1]。

  • 正确答案:-e 或 -f
  • 解析:-e​ 用于测试文件是否存在(包括任何类型),-f​ 用于测试文件是否存在且为普通文件。在条件测试中常用 [ -e file ]​ 或 [ -f file ]

(判断题)Shell中的$0表示当前脚本的文件名。()

  • true. 正确
  • false. 错误
  • 正确答案:true
  • 解析:$0 是Shell脚本中的特殊变量,表示当前脚本的文件名(包括路径)。

(填空题)Shell脚本中,用于检查文件file.txt是否存在的条件表达式是[填空1] 。

  • 正确答案:[ -f file.txt ] 或 test -f file.txt
  • 解析:条件表达式 [ -f file.txt ]​ 或 test -f file.txt 用于检查 file.txt 是否存在且为普通文件。

(填空题)在Shell脚本中,用于在后台执行命令的符号是[填空1] 。

  • 正确答案:&
  • 解析:& 符号用于将命令放在后台执行,使其不阻塞当前终端。

(判断题)Shell中的变量默认都是全局变量。()

  • true. 正确
  • false. 错误
  • 正确答案:true
  • 解析:在Shell中,默认情况下定义的变量都是全局变量,在整个脚本中可见。但函数内部可以通过 local 关键字定义局部变量。

(单选题)在Shell中,哪个命令可以让命令别名永久生效?( )

  • A. alias命令
  • B. 写入~/.bashrc文件
  • C. export命令
  • D. source命令
  • 正确答案:B
  • 解析:alias​ 命令设置的别名只在当前会话有效,要永久生效需要将别名定义写入Shell的配置文件(如 ~/.bashrc​),然后通过 source ~/.bashrc 重新加载。

(填空题)vi编辑器的工作模式包括[填空1]、[填空2]和[填空3]。

  • 正确答案:命令模式、插入模式、底行模式
  • 解析:vi编辑器有三种基本工作模式:命令模式(用于执行编辑命令)、插入模式(用于输入文本)和底行模式(用于执行保存、退出等操作)。

(填空题)make工具默认读取的配置文件是[填空1]。

  • 正确答案:Makefile 或 makefile
  • 解析:make工具默认在当前目录下查找名为 Makefile​ 或 makefile 的配置文件,用于定义编译规则和依赖关系。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Back to top