当前位置: 首页 > news >正文

如何布局网站/西安seo优化培训机构

如何布局网站,西安seo优化培训机构,wordpress 占用内存高,李氏牛仔网站建设风运维工程师必会shell知识前言一、常用的shell小知识变量字符串长度判断字符串截取变量判断、赋值整数运算shell中各括号用途echo输出终端更改清空屏幕打印日期相关生成随机字符串比较信号前言 Shell 是一个 C 语言编写的脚本语言,它是用户与 Linux 的桥梁&#xff0…

运维工程师必会shell知识

  • 前言
  • 一、常用的shell小知识
      • 变量
      • 字符串长度判断
      • 字符串截取
      • 变量判断、赋值
      • 整数运算
      • shell中各括号用途
      • echo输出
      • 终端更改
      • 清空屏幕打印
      • 日期相关
      • 生成随机字符串
      • 比较
      • 信号


前言

Shell 是一个 C 语言编写的脚本语言,它是用户与 Linux 的桥梁,用户输入命令交给 Shell 处理,
Shell 将相应的操作传递给内核(Kernel),内核把处理的结果输出给用户。
Shell是运维工程师最基础也是最常用脚本语言,可以大大的提高批处理效率。当然,随着技术的发展,新生了更多批处理工具,如ansible,当然也包含当下大热的Python。

一、常用的shell小知识

变量

自定义变量:直接定义,只在当前shell才能生效
环境变量:export加变量,在所有shell中生效
如果 1.sh 要使用 2.sh 里面的变量,可直接在 1.sh 中添加 source 2.sh或者 .2.sh

位置变量:

$1 $2 $3 $4 $5 $6 $7 $8 $9 ${10}

预定义变量:

$0       脚本名$*       所有的参数$@       所有的参数$#       参数的个数$$       当前进程的PID$!       上一个后台进程的PID$?       上一个命令的返回值 0 表示成功

字符串长度判断

*注:使用-z 或-n 判断字符串长度时,变量要加双引号*
[ -z "$a" ]   # 字符串长度为0[ -n "$a" ]   # 字符串长度不为0

字符串截取

abc="abc-123-df-11-192.168.1.1"echo "${abc#*-}"        # 左边最小匹配(截取出较长部分)123-df-11-192.168.1.1 echo "${abc##*-}"       # 左边最大匹配(截取出较短部分)192.168.1.1echo "${abc%-*}"        # 右边最小匹配abc-123-df-11           echo "${abc%%-*}"       # 右边最大匹配

变量判断、赋值

${varia-value} :假如$varia没有设定,则使用value作传回值。(空值及非空值时不作处理) ${varia:-value} :假如$varia没有设定或为空值,则使用value作传回值。(非空值时不作处理)${varia+value} :假如$varia设为空值或非空值,均使用value作传回值。(没设定时不作处理)${varia:+value} :若$varia为非空值,则使用value作传回值。(没设定及空值时不作处理)${varia=value} :若$varia没设定,则使用value作传回值,同时将$varia赋值为value 。(空值及非空值时不作处理)${varia:=value} :若$varia没设定或为空值,则使用value作传回值,同时将$varia赋值为value 。(非空值时不作处理)${varia?value} :若$varia没设定,则将value输出出至STDERR。(空值及非空值时不作处理)${varia:?value} :若$varia没设定或为空值,则将value输出至STDERR。(非空值时不作处理)

整数运算

$[]
小数运算:bc工具echo 'scale=2;10/3' |bc  # 用 scale 保留两位小数点
expr   # 可进行加减乘除运算,数字与运算符之间必须有空格,使用乘号'*',必须用\反斜杠
expr 1 \* 

shell中各括号用途

()用途 1:在运算中,先计算小括号里面的内容
用途 2:数组
用途 3:匹配分组
(( ))用途 1:表达式,不支持-eq 这类的运算符。不支持-a 和-o,支持<=、>=、<、>这类
比较符和&&、
$( )执行 Shell 命令,与反撇号等效
$(( ))用途 1:简单算数运算用途
2:支持三目运算符 $(( 表达式?数字:数字 ))
[ ]条件表达式,里面不支持逻辑判断符
[[ ]]条件表达式,里面不支持-a 和-o,不支持<=和>=比较符,支持-eq、<、>这类比较符。支持=~模式匹配,也可以不用双引号也不会影响原意,比[]更加通用
$[ ]简单算数
{ }对逗号(,)和点点(…)起作用,比如 touch {1,2}创建 1 和 2 文件,touch{1…3}创建 1、2 和 3 文件
${ }用途 1:引用变量
用途 2:字符串

echo输出

echo -e      可以解释"\t \n"echo         本身输出带换行echo -n      不换行输出颜色输出echo -e "\e[1;31m请输入你的选择: \e[0m"        # 31-37前景色41-47背景色 0m是恢复字体颜色            字体背景颜色             显示方式30:黑                40:黑               0:终端默认设置31:红                41:深红             1:高亮显示32:绿                42:绿               4:下划线33:黄                43:黄色             5:闪烁34:蓝色              44:蓝色              7:反白显示35:紫色              45:紫色              8:隐藏36:深绿              46:深绿37:白色              47:白色

终端更改

export PS1="\[[\[\e[5;31m\]\u\[\e[0m\]@\h \W \]]\\$ ">>/$home/.bashrc

清空屏幕打印

printf "\e[2J\e[H"

日期相关

获取日期:
date "+%F %T"
date "+%Y-%m-%d %H:%M:%S"获取几天前的日期:
date -d "n days ago" +%Y-%m-%d (+%F)       n为天数把日期和时间转换成时间戳:
date -d "2016-12-15 18:00:00" +%s把时间戳转成时间:
date -d '@1481842800' '+%F %T'

生成随机字符串

生成随机字符串(包含数字、大小写英文、符号)
cat /dev/urandom | strings -n C | head -n L  # C表示字符串的字符数,L表示要生成多少行字符生成随机字符串(包含数字和字母)
echo $RANDOM |md5sum |cut -c 1-10
openssl rand -hex 5 随机产生10长度字符串生成随机数字
date +%N |cut -c 1-8

比较

[ 1 -gt 10 ]            大于
[ 1 -lt 10 ]            小于
[ 1 -eq 10 ]            等于
[ 1 -ne 10 ]            不等于
[ 1 -ge 10 ]            大于等于
[ 1 -le 10 ]            小于等于

信号

trap "" signalHUP(1)          挂起,通常因终端掉线或用户退出而引发INT(2)          中断,通常因按下Ctrl+C组合键而引发QUIT(3)         退出,通常因按下Ctrl+/组合键而引发
http://www.lbrq.cn/news/949483.html

相关文章:

  • 免费房地产网站模板/推广费用一般多少
  • 北京seo平台/商丘网站seo
  • 广州化妆品网站建设/今日全国最新疫情通报
  • 免费行情软件app网站大全下载u288/网站提交入口链接
  • 怎么做有图有声的网站/100个免费推广b站
  • 广东企业网站建设公司/手机百度app下载安装
  • 河南做网站 河南网站建设/软文推广名词解释
  • 网站建设业务怎么开展/西安做网站的网络公司
  • 柞水县住房和城乡建设局网站/google关键词优化
  • 做虚拟币网站需要什么手续/游戏推广对接平台
  • 全国可信网站/市场营销策划包括哪些内容
  • 大连网站制作的公司哪家好/怎么在网上销售
  • 网站建设工作报告/教育培训机构加盟十大排名
  • 购物形式网站制作/百度网盘账号登录入口
  • 网站安全建设方案报告/百度上打广告怎么收费
  • html5微信网站模板/河南网站推广多少钱
  • 汕头网站建设小程序/网站维护一年一般多少钱?
  • 建wiki网站/seo网站排名优化工具
  • 十堰的网站建设/网络推广专员是干什么的
  • html5 metro风格网站模板/碉堡了seo博客
  • 国外设计网站pinterest极速版/友链之家
  • 外贸自建站多久能出单/百度搜索如何去广告
  • ui做的好的网站有哪些/天津搜狗seo推广
  • 安康网站建设公司电话/升华网络推广软件
  • 7k网站怎么做/aso优化师主要是干嘛的
  • 网站关键词怎么做效果好/怎么推广app
  • 我要做网站/微信营销方案
  • 商场设计任务书/关键词优化报价查询
  • 咸阳网站建设推广/上海网优化seo公司
  • 嘉兴秀洲区建设局网站/湖南长沙seo
  • J2EE模式---前端控制器模式
  • PHP与Web页面交互:从基础表单到AJAX实战
  • 原型链污染
  • linux shell从入门到精通(一)——为什么要学习Linux Shell
  • 非线性优化框架CasADi工具箱求解最优控制问题OCP
  • UE5多人MOBA+GAS 番外篇:移植Lyra的伤害特效(没用GameplayCue,因为我失败了┭┮﹏┭┮)