Shell脚本

1.常见变量

#调用变量
$x 或 ${x}

#变量
$?  上一次执行是否成功,0是成功,1是失败
$0  当前shell脚本的名称
$1~9 第1到第9个参数
$# 参数的个数
$* 参数的内容

#常用符号
>  #覆盖追加内容
>> #追加内容但不覆盖
;  #执行多条命令
|  #管道符号
&& #两条命令,只有前面的执行成功了后面才会执行
|| #两条命令,只有前面的执行失败了后面才会执行
" " #输出里面变量的值
' ' #输出本身的内容
` ` #输出命令的结果 eg:a=`date`;echo $a 输出的是时间
2>/dev/null #错误输出到无底洞
1>/dev/null #正确输出到无底洞

2.运算符

#整数的3种运算方式 加+ 减- 乘* 除/
#1
expr a + b (乘的时候运算符要加转义符 \*)
#2
echo $[a + b]
#3
echo $((a + b))

#小数
#1.进入bc计算机运算
bc

#2.通过管道符传给bc
echo "1.2 + 1.3" | bc

#保留两位小数,要加 /1 才生效
echo "scale=2;(1+3)/1"|bc

#条件判断
语法:[ 判断表达式 ]
#文件(夹)或者路径:
 -e 目标是否存在(exist)
 -d 是否为路径(directory)
 -f 是否为文件(file)
#判断当前目录下是否有foer.sh这个文件,假如没有就创建出foer.sh 文件
 [ -e foer.sh ] || touch foer.sh 

#权限:-r 是否有读取权限(read) -w 是否有写入权限(write) -x 是否有执行权限(excute) 
[ -x 123.txt ] && echo '有执行权限'

#整数值(int型):
-eq 等于(equal)
-ne 不等于(not equal)
-gt 大于(greater than) 
-lt 小于(lesser than) 
-ge 大于或者等于(greater or equal) 
-le 小于或者等于(lesser or equal) 
# eg: [ 9 -gt 8 ] && echo '大于'

# 小数(浮点型):
[ `echo '1.2 < 1.3' | bc` -eq 1 ] && echo '小于'

# 字符串:
= 相等 
!= 不相等 
# eg: [ 'kkkkk' != 'kkkk' ] && echo '不等于'

3. read命令

#语法 read -参数

-p :给出提示符,默认不换行
-s :隐藏输入的内容
-t :等待的时间(秒),超时自动退出
-n :限制读取字符的个数,到临界值会自动执行

4.shell脚本输出上色

#字体色范围:30-37 
echo -e "\033[30m 黑色字 \033[0m" 
echo -e "\033[31m 红色字 \033[0m"
echo -e "\033[32m 绿色字 \033[0m" 
echo -e "\033[33m 黄色字 \033[0m" 
echo -e "\033[34m 蓝色字 \033[0m" 
echo -e "\033[35m 紫色字 \033[0m" 
echo -e "\033[36m 天蓝字 \033[0m" 
echo -e "\033[37m 白色字 \033[0m" 

#字背景颜色范围:40-47 
echo -e "\033[40;37m 黑底白字 \033[0m" 
echo -e "\033[41;30m 红底黑字 \033[0m" 
echo -e "\033[42;34m 绿底蓝字 \033[0m" 
echo -e "\033[43;34m 黄底蓝字 \033[0m" 
echo -e "\033[44;30m 蓝底黑字 \033[0m" 
echo -e "\033[45;30m 紫底黑字 \033[0m" 
echo -e "\033[46;30m 天蓝底黑字 \033[0m" 
echo -e "\033[47;34m 白底蓝字 \033[0m" 

# 特效范围
echo -e "\033[0m 无任何特效 \033[0m" 
echo -e "\033[1m 高亮度 \033[0m" 
echo -e "\033[4m 下划线 \033[0m" 
echo -e "\033[5m 闪烁 \033[0m"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值