【Linux】章1 提高命令行运行效率(RH134知识点问答题)
1、#!/bin/bash 是什么意思?
答:
#!是一个解释器指令,称为she-bang或hash-bang
#!/bin/bash写在脚本第一行,告诉系统运行这个文件的时候,用 /bin/bash 这个程序来解释执行
简单来说,它就像是给系统的一个“提示”,让系统知道用什么工具来执行这个脚本文件
2、PATH 变量有什么重要作用?
答:
PATH 是一个环境变量,它告诉系统在哪些目录里去找命令,是系统找命令的目录清单
当用户在命令行中输入一个命令时,Shell 会按照 PATH 中列出的目录顺序查找该命令的可执行文件。不用写程序的完整路径。
例如,PATH=/usr/bin:/bin:/usr/local/bin 表示 Shell 会先在 /usr/bin 目录中查找,如果没有找到,再依次查找 /bin 和 /usr/local/bin
3、echo 命令的作用是什么?
答:
echo:打印要输出的文字到终端,显示出文本
echo "Hello" 会在屏幕上显示 “Hello”。如果想输出一个变量的值,比如 echo $HOME,它就会显示家目录路径。
经常与重定向 > 与管道 | 结合使用。
4、解释下列正则表达式的含义:^cat、cat$、^cat$
答:
^=行开头。 ^cat 就是匹配以 “cat” 开头的字符串
$=末尾匹配。 cat$ 就是匹配以 “cat” 结尾的字符串
^cat$:匹配整行就只有cat,不多不少
5、简述正则表达式和 shell 模式匹配的区别,在shell命令使用正则表达式的时候需要注意什么?
答:
通配符=找文件
正则=找文本内容
(1)正则表达式:用来匹配复杂的文本模式。它有很多特殊的符号,比如 ^、$、.、* 等,可以用来描述复杂的匹配规则
Shell 模式匹配:主要是用来匹配文件名的,相对简单。它用的符号有 *(匹配任意字符)、?(匹配单个字符)等,比如 *.txt 可以匹配所有以 .txt 结尾的文件
区别:正则表达式功能更强大,适合复杂的文本匹配;Shell 模式匹配更适合简单的文件名匹配。它们的符号和规则不一样,比如正则表达式里的 . 在 Shell 模式匹配里没有直接对应的功能。
(2)有些符号在 Shell 里也有特殊含义,所以要用反斜杠 \ 来转义,比如 . 要写成 \.
最好把正则表达式用引号括起来,避免 Shell 把里面的符号误解释了
更多推荐

所有评论(0)