科技微网站,网络品牌营销方案,步骤流程,建设局和住建局什么是shell
人和计算机内核之间的中介#xff1a;
计算机的语言是二进制#xff0c;把人类的语言翻译成计算机能够识别的语言#xff0c;然后让内核来处理
内核完成之后要把结果反馈给用户#xff0c;要把计算机的翻译成人类能够识别的语言
命令解释器#xff0c;pyc…什么是shell
人和计算机内核之间的中介
计算机的语言是二进制把人类的语言翻译成计算机能够识别的语言然后让内核来处理
内核完成之后要把结果反馈给用户要把计算机的翻译成人类能够识别的语言
命令解释器pycharm idel vscode
linux当中的shell有哪些
1、bash 主流也是现在市面上绝大多数的linux系统默认的shell
2、sh bash是sh的升级版
3、csh 类C语言的shell
4、tcsh 和CSH类型相当于升级版
5、nologin也是一种shell禁止用户登录
shell----脚本扩建语言或者是动态语言是一种编程的语言控制软件的应用程序只要在被调用时才会执行
脚把保存在文本中的代码执行起来
本保存在文本中的代码特定条件运行代码的条件
shell脚本的作用
自动化运维
批量化重复操作可以通过脚本和计划任务来进行自行运行。
减轻了管理人员的工作量
避免配置出错
在工作中所有的脚本都是赋权执行的
★shell脚本的结构
创建一个子shell环境只在这个子环境当中运行不会“真正”的执行代码。运行结束子环境也会退出。
1、bash 调试模式 source 点命令真正的运行可执行的代码
2、赋权执行
/opt/first.sh
3、定时任务------》绝对路径
重定向就是把这些信息保存到指定的文件当中去
重定向输入
重定向输出 只能把标准输入保存到文件当中去如果原文有内容会直接覆盖 标准输出保存到文件当中去
重定向错误输出 2 将错误信息保存到指定的文件文件当中的内容也会被覆盖 2 将错误信息保存到指定的文件文件当中的内容不会被覆盖而是在行后追加
混合输出 将标准输出、标准错误保存到同一文件中,覆盖原内容 将标准输出、标准错误保存到同一文件中,文件当中的内容不会被覆盖而是在行后追加
★变量用来存放系统和用户需要使用的特定的参数
变量名
系统定义好的每个用户都可以使用全局变量一般情况下是不可以修改的
自定义变量主要是用户定义的名称和名称对应的参数值
★自定义变量名
1、不要使用系统的命令作为变量名称
2、不要使用中文
3、变量名不能使用特殊符号来开头
4、定义变量时一定要是字母开头不能以数字开头。
5、变量名最好是对应的名称的英文全称或者简写。
变量值
int ............... 整数没有小数点
string ............ 字符串字母或者数字组成会用引号引起来
布尔 ............. true false 为真还是为假
打印变量
echo $number
★弱引用和强引用
“ ”弱引用打印变量时加上双引号就是变量的值
‘ ’强引用打印变量时就是字符串本身不在代表变量对应的值 变量的作用范围
1、全局变量主要是系统定义的不能改的
在全局配置文件当中修改export 变量名值
所有的用户都可以使用
如果有需要一直不变的参数可以供所有人使用就可以配置全局变量
副作用一旦有改动会增加复杂性
2、环境变量也是全局变量的一种系统创建的设置用户的工作环境由系统维护一般用户是不去修改的让所有人都可以自动识别到自动补齐
3、位置变量脚本外传参
$1 $2
4、预定义变量全局变量的一种脚本解释器提供的或者是编程语言自带的不能修改
★$* $表示命令或者脚本需要处理的参数区别在于处理方式不同
区别$会把传入的参数当做一个整体来进行处理不加双引号和$是一样的都是一个一个处理
$加不加双引号都会把参数一个一个的处理
$#记录传递给脚本参数的个数
$?记录的上一次执行命令的返回码用来判断上一次执行的命令是否成功
0和非0
只有0表示上一次的命令执行成功其他的都是失败
整数运算
整数运算是指对整数进行的算术运算。常见的整数运算包括加法、减法、乘法和除法只取商的整数部分。
非整数运算
通常指对浮点数小数进行的算术运算。常见的非整数运算包括加法、减法、乘法和除法结果可以是小数。
num$(echo 4.45.5 | bc)
num1$(awk BEGIN{print 4.45*1.2} )
echo $num1