Shell
爱吃水饺的小京
这个作者很懒,什么都没留下…
展开
-
shell-函数
shell中有系统函数,也可以自定义函数{Action]}调用函数:funname [值]编写一个shell,计算输入两个参数的和,getSum#!sum = 0 sum = $ [ $n1 + $n2 ] echo "sum= $sum " } read -p "请输入n1" n1 read -p "请输入n2" n2运行结果。原创 2022-11-19 22:57:58 · 200 阅读 · 0 评论 -
shell-read读取控制台输入
编写一个shell,1.读取控制台输入一个NUM1值,2。读取控制台输入一个NUM2值,在10秒内输入。-t:指定读取值时等待的时间(秒),如果没有在指定的时间内输入,就不再等待了。read [选项] [参数]-p:指定读取值时的提示符。变量:指定读取值的变量名。原创 2022-11-19 22:37:47 · 213 阅读 · 0 评论 -
shell-流程控制while循环
编写一个shell,从命令行输入一个数n,统计从1+。while [ 条件判断式 ]原创 2022-11-19 22:26:30 · 196 阅读 · 0 评论 -
shell-流程控制for循环
for (( 初始值;for 变量 in 值1 值2 值3…编写一个shell程序,从1加到100。编写一个程序,打印出命令行参数。原创 2022-11-19 22:17:44 · 175 阅读 · 0 评论 -
shell-流程控制case语句
编写一个shell程序,当命令行参数是1时,输出“周一",是2时,输出”周二“,其他情况输出”other“如果变量的值等于1,则执行程序1。如果变量的值等于2,则执行程序2。case $变量名 in。原创 2022-11-19 21:49:09 · 223 阅读 · 0 评论 -
shell-流程控制if判断
编写一个shell程序,如果输入的参数,大于等于60,则输出“及格了”, 如果小于60,则输出“不及格”[ 条件判断式 ] ,中括号和条件判断式之间必须有空格。elif [ 条件判断式 ]if [ 条件判断式 ]if [ 条件判断式 ]原创 2022-11-19 21:34:38 · 548 阅读 · 0 评论 -
shell-条件判断
condition ] && echo OK || echo noOK 条件满足,执行后面的语句。编写一个shell程序,如果输入的参数,大于等于60,则输出“及格了”,小于60,则输出“不及格”非空返回ture,可以用$?验证(0为true,>1为false)-f 文件存在并且是一个常规的文件。condition前后都要有空格。[ abc ] 返回ture。-d 文件存在并且是一个目录。[] 返回false。原创 2022-11-19 21:21:03 · 544 阅读 · 0 评论 -
shell-运算符
注意:expr运算符见要有空格,如果希望将expr的结果赋给某个变量,使用反引号``expr 的运算符表示:-(减法),*(乘),/(除),%(取余)[运算式] 或者expr m + n。原创 2022-11-19 16:58:34 · 156 阅读 · 0 评论 -
shell-预定义变量
shell事先已经定义好的变量,可以直接在shell脚本中使用。原创 2022-11-19 16:19:33 · 326 阅读 · 0 评论 -
shell-位置参数
当我们执行一个shell时,如果希望获取到命令行的参数信息,就可以使用到位置参数变量比如:./myshell.sh 100 200 ,这个就是一个执行shell的命令行,获取到位置参数后,就可以在myshll脚本中使用。原创 2022-11-19 15:54:23 · 222 阅读 · 0 评论 -
shell-运算符
declare [+/-][选项]变量名-:给变量设定类型舒心+:取消变量的类型属性-i:将变量声明为整数型(integer)-x:将变量声明为环境变量-p:显示指定变量的被声明类型使用declare -i原创 2022-06-27 18:07:19 · 73 阅读 · 0 评论 -
shell-位置参数变量和预定义变量
运行结果:运行结果:原创 2022-06-27 16:52:50 · 226 阅读 · 0 评论 -
Linux-软件包管理与服务管理
Linux软件包分类源码包脚本安装开源,如果有足够的能力,可以修改源代码可以自由选择所需饿功能软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高卸载方便源码包的缺点:安装过程步骤较多,尤其安装较大的软件集合时(如LAMP环境搭建),容易出现拼写错误编译过程时间较长,安装比二进制安装时间长因为是编译安装,安装过程中一旦报错,新手很难解决二进制包(RPM包,系统默认包)...原创 2022-05-17 11:59:42 · 269 阅读 · 0 评论 -
shell-cut字符截取命令
cut语法cut [选项] 文件名-f 列号 提取第几lie-d 分隔符 按照指定分隔符割裂#提取第二列,默认以\t作为分隔符cut -f2 student.txt#以;分割,提取1,3两列cut -d ";" -f 1,3 student2.txt cut 的 缺点cut不能分割以空格作为分隔符的行cut可以分割\t和其他非空格的分隔符分割的行...原创 2022-05-13 18:24:10 · 757 阅读 · 0 评论 -
shell-正则表达式与通配符
正则表达式与通配符正则表达式用来在文件中匹配符合条件的字符串,正则是包含匹配,grep,awk,sed等命令可以支持正则表达式通配符用来匹配符合条件的文件名,通配符是完全佩佩,ls,find,cp这些命令不支持正则表达式,所以只能使用shell自己的通配符来进行匹配正则表达式元字符含义元字符作用*前一个字符匹配0次或任意多次.匹配除了换行符外任意一个字符^匹配行首$匹配行尾[]匹配括号中指定的任意一个字符,只匹配一个字符[^]匹配除中括号原创 2022-05-13 18:13:11 · 291 阅读 · 0 评论 -
shell-环境变量以及环境变量的配置文件
环境变量定义用户自定义变量只在当前的shell中生效,而环境变量会在当前shell和这个shell的所有子shell当中生效如果把环境变量写入相应的配置文件,那么这个环境变量就会在所有的shell中生效设置环境变量export 变量名=变量值 #申明变量env #查询变量unset 变量名 #删除变量系统常见环境变量PATH:系统查找命令的路径echo $PATH/Library/Frameworks/Python.framework/Versions/3.9/bin:/usr/lo原创 2022-05-13 12:18:16 · 3250 阅读 · 0 评论 -
shell-变量与本地变量
变量规则(1)变量名称可以由字母、数字和下划线组成,但是不能以数字开头(2)在Bash中,变量的默认类型都是字符串,如果要进行数值运算,则必须指定变量类型为数值型(3)变量的值如果有空格,需要使用单引号或双引号包括(4)变量用等号连接值,等号左右两侧不能有空格(5)在变量的值中,可以使用\转义符(6)如果需要增加变量的值,那么可以进行变量值的叠加,变量需要使用双引号或者包含(7)如果把命令的结果作为变量值赋予给变量,则需要使用反引号或者{}包含(7) 如果把命令的结果作为变量值赋予给变量,则原创 2022-05-10 23:59:17 · 152 阅读 · 0 评论 -
shell-通配符与其他特殊符号
通配符通配符作用?匹配一个任意字符*匹配0个或任意多个任意字符,也就是可以匹配任何内容[]匹配中括号中任意一个字符[-]匹配中括号中任意一个字符,-代表一个范围[^]逻辑非,表示匹配不是中括号内的一个字符ls abc?abcdBash中其他特殊符号符号作用‘’单引号,在单引号中所有的特殊符号,如$和`,都没有特殊含义“”双引号,在双引号中,特殊符号都没有特殊含义,但是$,`,\有特殊含义`反引号,反引原创 2022-05-10 23:31:25 · 170 阅读 · 0 评论 -
shell--多命令顺序执行与管道符以及grep
多命令顺序执行多命令顺序执行格式作用;命令1;命令2多个命令顺序执行,命令之间没有任何逻辑联系&&命令1&&命令2逻辑与,当命令1正确执行,则命令2才会执行;当命令1执行不正确,则命令2不会执行命令顺序执行比如要计算将一个文件写入另一个文件需要的时间,这时就可以使用;,在命令执行前后执行date命令dd if=输入文件 of=输出文件 bs=字节数 count=个数if=输入文件 指定源文件或源设备of=输出文件原创 2022-05-10 23:10:16 · 566 阅读 · 0 评论 -
shell-输入输出重定向
标准输入输出设备设备文件名文件描述符类型键盘/dev/stdin0标准输入显示器/dev/stdout1标准输出显示器/dev/stderr2标准错误输出输出重定向类型符号作用标准输出重定向命令>文件以覆盖的方式,把命令的正确输出输出到指定的文件或设备当中标准输出重定向命令>>文件以追加的方式,把命令的正确输出输出到指定的文件或设备当中标准错误输出重定向错误命令 2>文件以覆原创 2022-04-30 17:41:40 · 336 阅读 · 0 评论 -
shell-历史命令和别名
历史命令history [选项] [历史命令保存文件]-c 清空历史命令-w 把缓存中的历史命令写入历史命令保存文件 ~/.bash_history历史命令默认保存1000条,可以在环境变量配置文件/etc/profile中进行修改新执行的命令只有在退出之后才会保存到.bash_history文件中或者使用-w把缓存中的命令写入到历史命令文件中history -w .bash_history历史命令的调用使用上,下箭头调用以前的历史命令使用“!n"重复执行第n条历史命令使用"!!“重原创 2022-04-30 17:00:09 · 286 阅读 · 0 评论 -
shell-shell脚本的执行方式
echo输出命令echo [选项] [输出内容]-e 支持反斜线控制的字符转换控制字符作用|输出\本身\a输出警告音\b退格键,也就是向左删除键\c取消输出行末的换行符,和-n选项一致\eESCAPE键\f换页符\n换行符\r回车键\t制表符,也就是Tab键\v垂直制表符\0nnn按照八进制ASCII码表输出字符,其中0为数字零,nnn是三位八进制数\xhh按照十六进制ASCII码表输出字符,原创 2022-04-30 16:36:33 · 760 阅读 · 0 评论 -
shell-shell概述
shell是什么shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用shell来启动,挂起,停止甚至是编写一些程序将命令翻译成内核能识别的机器语言,然后将内核的返回再进行翻译shell还是一个功能相当强大的编程语言,易编写,易调试,灵活性较强,shell是解释执行的脚本语言,在shell中可以直接调用Linux系统命令Linux支持的shell如果查看Linux支持的shell,查看文件/etc/shellscat /etc/shel原创 2022-04-30 16:07:44 · 642 阅读 · 0 评论