Shell 简介
Shell 是一个应用程序,它连接了用户和 Linux 内核,让用户能够更加高效、安全、低成本地使用 Linux 内核,这就是 Shell 的本质
用户通过 Shell 来使用 Linux,不启动 Shell 的话,用户就没办法使用 Linux;Shell 就是一个“中间商”,它在用户和内核之间“倒卖”数据
进入 Shell 的方法是让 Linux 系统退出图形界面模式,进入控制台模式,这种模式称为 Linux 控制台
Bash的功能和特性
历史命令:保存执行过的命令,可以快速重复执行(history)
命令别名:将长命令简化为短命令,或用习惯用法代替(--all(长格式) –l(短格式))
命令和文件路径补全:通过Tab键快速输入命令名或路径名
通配符:快速查找和处理文件
管道和重定向:最常使用的操作之
Bash变量
定义:
定义变量时通常不需要指明类型,直接赋值就可以
用“=”连接变量名和变量值;设置变量值时,“=”左右不能直接连接空格
在 Bash shell 中,每一个变量的值都是字符串(可以使用 Shell declare 关键字显式定义变量的类型)
使用:
两种形式:$variable_name 或 ${variable_name}
使用echo 命令测试
注:
$variable_name定义的时候,定义变量最好采用variable_name=""带引号的形式
${variable_name}写法比较规范,定义变量时不带引号也没关系
规则:
1. 变量名由字母、数字和下划线组成
2. 必须以字母或者下划线开头,首字符不能是数字
3. 不能使用Shell里的关键字
4. 单双引号不同
单引号' '包围变量的值时,单引号里面是什么就输出什么,即使内容中有变量和命令也会把它们原样输出
双引号" "包围变量的值时,输出时会先解析里面的变量和命令,而不是把双引号中的变量名和命令原样输出
5. 转义符“\”将特殊字符转义为一般字符
6. 修改变量值
为变量追加新内容,建议使用 ”$variable_name ” 或 ${variable_name } 的形式
[zxy@localhost 20220505]$ var='abc' //定义变量
[zxy@localhost 20220505]$ echo $var //查看变量值
abc
[zxy@localhost 20220505]$ var1=zhang
[zxy@localhost 20220505]$ var2=xiao
[zxy@localhost 20220505]$ var3=zxy
[zxy@localhost 20220505]$ echo $var1
zhang
[zxy@localhost 20220505]$ echo ${var2}
xiao
[zxy@localhost 20220505]$ echo $var3
zxy
[zxy@localhost 20220505]$ var3="num is $var" //双引号用法
[zxy@localhost 20220505]$ echo $var3
num is abc
[zxy@localhost 20220505]$ var3='num is $var' //单引号用法
[zxy@localhost 20220505]$ echo $var3
num is $var
[zxy@localhost 20220505]$ var1=zhang\ xiao\ yu //转义符
[zxy@localhost 20220505]$ echo $var1
zahng xiao yu
[zxy@localhost 20220505]$ echo $var2
xiao
[zxy@localhost 20220505]$ var2="$var2"\ yu //修改值,追加内容yu
[zxy@localhost 20220505]$ echo $var2
xiao yu