首页 > 系统相关 >运维之shell脚本初识

运维之shell脚本初识

时间:2024-06-19 11:09:46浏览次数:13  
标签:脚本 输出 shell 变量 运维 符号 初识 按位

 

脚本工具可以帮助我们完成一些需要重复劳动的工作;

基础语法:

"#"为注释符号

1:#指定脚本运行环境为 /bin/bash

  #! /bin/bash

2:输入参数,xxx为变量名,多个变量名用空格隔开
read xxx
     输出参数
echo xxx

3: 变量和运算符的定义:这是每个编程语言必不缺少的部分  

       3.1变量的定义格式:value=“shell is very good”  注:“=”前后不能有空格

       3.2变量的替换

   因为"$"是输出提示符,所以当我们想输出该符号时,可以考虑使用转义字符 ‘/’ 来实现。
  同时,shell也提供了 “{}” 来限定一个变量的开始与结束;在紧跟变量输出字母后缀时可以使用该功能,如下:

        value="1234"

        echo "num is ${value}56789"

        3 .3 变量的位置

       在shell编程中系统为我们提供了[$0 - $n];其中$0比较特殊,里面存放的是当前脚本的名称;而在需要传递的参数超过10的时候,需要使用 “{}” (例如: ${11}, ${12} …)。

               

4、bash 引导规则
格式:

双引号 —— 阻止shell对大多数的特殊字符进行解释(例如:#);但是 ‘ $ ’、‘ ` ’、 ‘ " ’、仍然保持其特殊含义。
单引号 —— 阻止 shell 对所有的字符进行解释,即纯文本输出,不对$后进行解释;
倒引号 —— ‘ ` ’这个符号通常位于 Esc 键的下方;当用改符号括起一个shell命令时,这个命令会被执行,执行后的输出结果作为这个表达式的值。改符号内的特殊字符一般都会被解释的

5:运算符的定义:

  shell脚本中的运算符合其他语言的差不多:

+, -  单目正,单目负
!, ~  逻辑非,按位取反
*, /, %  乘,除,取余
+,-  加, 减
<< , >>  按位左移, 按位右移
<=, >=, <, > 小于等于,大于等于,小于,大于
==, != 等于, 不等于
& 按位与
^ 按位异或
| 按位或
&& 逻辑与
|| 逻辑或
=, +=, -+, *=, /=, %=, &=, |=, <<=, >>= 赋值,运算并赋值
注意:在shell编程中,表示相等时, “==” 和 “=” 在大部分情况下不存在差异,这和其他编程语言是有差异的。

后续待更

 

标签:脚本,输出,shell,变量,运维,符号,初识,按位
From: https://www.cnblogs.com/xiezlailai/p/18255816

相关文章

  • 255页10万字大数据中心架构、存储、基础设施建设和运维方案WORD(文末附123相关资料下载
    原文《大数据中心架构、大数据存储、数据中心基础设施建设和运维方案》更多参考资料及相关文档下载见文末​大数据中心架构是一个集数据存储、处理、分析和管理于一体的综合性平台。其设计旨在实现高效的数据吞吐、稳定的运行性能和灵活的资源扩展。整个架构采用分层设计,......
  • Java面向对象:初识多态
    1、多态多态是面向对象编程的三大基本特性之一。多态指的是同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。多态实现条件:1、继承关系的存在2、方法的重写3、父类引用调用重写的方法例子:classAnimal{publicvoideat(){System.out.prin......
  • Shell编程之循环语句
    Shell编程之循环语句一、for循环语句for语句的结构for语句应用示例二、while循环语句while语句的结构while语句应用示例三、until循环语句until语句结构until语句应用示例注意:在Shell编程中,循环语句是一个非常重要的组成部分,它允许我们重复执行某段代码,直到满......
  • shell函数
    shell函数函数定义:将命令序列按照格式写在一起。格式指的是函数的固定格式。两种格式函数作用:方便重复使用。函数库,集中在一起,随时可以传参调用。大的工程分割成若干个小的功能模块,提高代码的可读性。函数的格式格式1functionshoping{​     命令序列......
  • shell函数
    shell函数定义:将命令序列按照格式写在一起。格式指的是函数的固定格式。作用:方便重复使用,可以生成函数库,集中在一起随时可以传参调用。      大的工程分割成若干个小的功能模块,提高代码的可读性。函数的格式:1.function shoping{    命令序列}2. ......
  • shell --- sed 命令
    sed命令经常用于替换字符串,格式为"sed-i's/旧字符串/新字符串/g'文件名",注意有单引号,下同。其中的-i表示实质改变文件内容,如果缺少则不会改变文件;g表示全局替换,如果缺少则只会替换每一行第一次出现的字符串,如下面所示:#将test.txt中所有的a替换为Ased-i's/a/A/g'test.tx......
  • 项目运维时,某用户通过RDP远程桌面连接服务器...任务管理器显示用户状态断开连接!记录运
    目录问题出现解决方式测试参考  今天处理项目运维问题,发现服务器任务管理器出现用户状态断开连接......问题出现项目运维时,某用户通过rdp远程桌面连接Windowsserver服务器时,出现服务器发布的进度计划无法执行,打开服务器任务管理界面出现用户状态断开连接标志,如下......
  • 揭秘10亿+高并发应用如何实现高效稳定的开发和运维
    本文分享自华为云社区《DTSETechTalk|第60期:构筑云原生时代的应用稳定性》,作者:华为云社区精选。本期直播主题是《构筑云原生时代的应用稳定性》,华为云aPaaSDTSE技术布道师韫欣,与开发者们交流了云原生时代的应用挑战、趋势,跟大家分享了华为云应用平台AppStage的实践经验和优......
  • 使用 shell 快速生成字符串的哈希值
    使用方式echo-n"dev"|sha256sum|cut-d''-f1此外也可以使用md5sum、sha224sum、sha1sum等,替换命令中的sha256sum即可。命令解释echo将字符串"dev"通过管道符传递给标准输出,-n选项可以去掉多余的换行符sha256sum本身接收的参数是文件路径,如果不指定,则从标......
  • Java面向对象:初识继承
    继承:一个类(子类或派生类)继承另一个类(父类或基类)的特性(属性和方法)。1、继承1.1、不使用继承例子:classDog{Stringname;intage;publicDog(Stringname,intage){this.name=name;this.age=age;}publicvoideat(){......