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

网站规划建设与管理维护教学大纲软文推广的100个范例

网站规划建设与管理维护教学大纲,软文推广的100个范例,销售管理系统免费版,运城有做网站设计第一章:变量 前言 什么是shell Shell 是一种提供用户与操作系统内核交互的工具,它接受用户输入的命令,解释后交给操作系统去执行。它不仅可以作为命令解释器,还可以通过脚本完成一系列自动化任务。 shell的特点 跨平台&#xff1a…
  • 第一章:变量

    • 前言

      • 什么是shell

        • Shell 是一种提供用户与操作系统内核交互的工具,它接受用户输入的命令,解释后交给操作系统去执行。它不仅可以作为命令解释器,还可以通过脚本完成一系列自动化任务。
      • shell的特点

        • 跨平台:大多数 Shell 都可以在不同的类 UNIX 系统上运行,包括 Linux 和 macOS。
        • 易于编写脚本:用户可以通过编写脚本来实现自动化操作,大大简化了复杂任务的执行。
        • 灵活性:Shell 支持多种内置命令,并允许通过管道、重定向等机制,将多个命令组合起来使用。
        • 用户友好:Shell 允许用户自定义环境变量、快捷命令和别名,增强了用户体验。
        • 强大的命令处理:支持控制流、条件判断、循环等逻辑操作,具备一定的编程功能。
      • shell可以做什么

        • 文件管理:通过命令创建、删除、复制、移动文件或目录。
        • 系统管理:执行系统管理任务,如查看和终止进程、监控系统状态、管理用户和权限。
        • 自动化任务:通过编写 Shell 脚本,自动执行批量任务,比如备份、日志管理等。
        • 程序执行:可以调用和运行各种程序、脚本或应用,并能处理它们的输出结果。
        • 网络操作:通过命令控制网络接口,进行 FTP、SSH 等网络操作。
      • shell的执行方式

        • 交互式执行:用户在命令行提示符下输入一条命令,Shell 立即解释并执行该命令。执行结束后,返回命令行等待下一条输入。

        • 脚本式执行:用户将多个命令写入一个文件(脚本文件),然后让 Shell 执行该文件中的命令。通过这种方式,用户可以将重复性任务自动化。

          • 先写一个简单的脚本

            • #简单的不标准test使用
              echo 'nihao'
              #shell没有结束符,换行结束,有些用;结束但是很少,还常用

              用下面的方式执行

          • sh 文件名.sh

          • bash 文件名.sh

          • . 文件名(.+空格).sh

          • soucre 文件名.sh

          • ./文件名.sh

          • 区别

            • sh,bash是告诉计算机无论脚本的 Shebang 行是什么是什么都用sh,bash执行,当然其实/usr/bin/sh是/usr/bin/bash的软连接(脚本在新的子 Shell 中执行,不会影响当前 Shell 的环境变量和设置)

            • .表示source:直接在当前 Shell 环境中执行脚本文件。. 是一个 Shell 内置命令,等同于 source

            • ./:在一个新的子 Shell 中执行脚本,并且会根据脚本中的 Shebang 行指定的解释器来运行,要执行权限

      • shell的解释器在哪

        • 查看当前使用的 Shell:在命令行输入 echo $SHELL 可以查看当前使用的 Shell 解释器路径。
        • 常见 Shell 解释器路径
          • /bin/bash:Bash 的路径。
          • /bin/sh:Bourne Shell 的路径。
      • shell脚本的建议格式

        • #!/bin/bash
          #Shebang行:使用 #!/bin/bash 指定脚本应由 Bash 解释器运行。
          #-----------------------------------
          # 脚本名称: backup_script.sh
          # 描述: 该脚本用于将指定的源目录备份到目标目录,
          #       并记录操作日志,处理潜在的错误。
          # 作者: Your Name
          # 日期: 2024-10-13
          # 版本: 1.0
          #-----------------------------------# 调试模式设置:
          # 开启严格模式,确保脚本执行时遇到错误会立即退出:
          # -e: 当命令执行失败时退出脚本。
          # -u: 使用未定义的变量时退出。
          # -o pipefail: 如果管道中的任一命令失败,整个管道失败。
          set -euo pipefail#-----------自己的代码写在下面-------------
          

          这只是建议,可以不管,但是建议这么写

    • 变量

      • 简介

        • 如果你用过其它语言你就了解,如果你没有用过。那么变量就是酒店门牌号,具体的操作如下:有一家酒店住人(就是内存放数据),你定了一间房(告诉内存准备空间),觉得444门牌不吉利但不愿意换房,换了门牌号666(告诉系统变量名),你住了(向变量内放了内容),第二天退房(变量死亡)。
      • 自定义变量

        • 用户自定义变量是用户在脚本中定义的变量,用于存储数据、路径、配置等信息。与系统预定义的变量不同,用户自定义变量通常以用户的需求为基础。
        • 定义变量
          • 变量名=值(文本引号内,数字没引号){变量名的要求:可以用字母大小写,数字,下划线组成,但是数字不开头也不能是全数字,不要用bash中的关键字,最好见名知意}
        • 使用变量
          • echo $变量名(echo表示打印,$表示调出变量内容,加起来就是调出变量内容然后打印出来)
        • 重复定义变量
          • 已有变量名=新值(会覆盖旧值)
        • 变量查看set
          • set可以查看当前系统所有变量
        • 变量删除
          • unset 变量名(一般来说变量没用了就不用管了,除非对内存要求严格,比如嵌入式)
        • 交互式定义变量
          • read 变量名(read函数从控制台读数据,意思是将读到的数据给变量)
          • read -p "在-p的条件下,你可以向终端输出一些语句" 变量名
        • 注意:三种引号
          • 单引号('):将其中的文本视为字面量,不进行任何变量替换或命令替换。
          • 双引号("):允许变量替换和命令替换。在引号内使用 $ 或反引号(`)会被解释。
          • 反引号(`):用于命令替换。反引号内的命令会被执行,其输出结果会替换原位置。现代 Shell 还支持使用 $(...) 语法来实现命令替换反引号,这种方式更清晰且更易于嵌套。
      • 整数运算(只能用整数,都支持变量$变量)

        • $(())方法
          • 用途:用于进行算术运算,是现代 Shell 中最常用的方式。
          • 格式:表达式写在 $((...)) 内部,不需要空格。
          • 优点:支持多种运算,包括加法+、减法-、乘法*、除法/和取余%。
        • $[]方法
          • 用途:也是进行算术运算的一种方式,但不推荐使用,因为在某些 Shell 中可能会被弃用。
          • 格式:表达式写在 $[...] 内部,不需要空格。
        • let方法(在声明变量的同时完成计算)
          • 注意:不支持浮点数运算。
          • 格式:可以省略 $ 符号,直接使用变量名。比如let 变量c=变量1+变量2
          • 用途:用于计算算术表达式,支持多种运算,常用于循环和条件语句中。
        • expr方法
          • 用途:用于计算表达式,支持整数运算。
          • 格式:需要在 expr 和运算数之间使用空格,要放在$()内。+-/%,\*(乘有点特殊)
          • 注意:通常用于较旧的 Shell 脚本,现代脚本中更常用 $(())
      • 小数运算(了解){需要用到bc(计算器)命令,没有就yum -y install bc}
        • echo “表达式”|bc:因为bc是命令,所以通过echo将表达式输出到终端,使用管道符传递给bc处理
      • 环境变量(了解)

        • 可以被子shell继承下去。
        • 直接声明:
          • export 变量=值(有等号就重新定义,没有就表示将已有变量提升为环境变量或者提升)
        • 转换声明:
          • 在当前用户的/.bash_profile(预制bash文件,登录运行这个脚本,所以在这个文件内写入export  变量=值)
          • 当你想让所有用户使用时/etc/profile(root下,这表示开机运行这个脚本)
      • 位置变量与预定义变量(了解)

        • 位置变量
          • 位置变量用于表示脚本的参数。当你运行一个 Shell 脚本并向它传递参数时,位置变量会自动存储这些参数。常见的包括 $0$1$2 等。
            • $0:表示当前脚本的名称。
            • $1``$2 ... $n:表示传递给脚本的第 1 个参数、第 2 个参数……依次类推。不要跳(比如$1 $10是错的)
            • $#:表示传递给脚本的参数个数。
            • $*:表示脚本的所有参数(作为单个字符串)。
            • $@:表示脚本的所有参数(每个参数作为独立的字符串)。
        • 预定义变量
          • Shell 提供了一些预定义的特殊变量,用来帮助处理脚本执行中的各种状态信息。
            • $$:表示当前 Shell 脚本的进程 ID(PID)。
            • $!:表示最后一个后台运行的进程的进程 ID。
            • $?:表示上一个命令的退出状态,0 表示成功,非 0 表示失败。
            • $-:表示当前 Shell 使用的选项标志。
            • $_:表示上一个命令的最后一个参数,或当前命令的完整路径。
  • 第二章:判断

    • shell条件测试【真返回0假返回1】

      • 数值比较:【 整数1 操作符 整数2 】--注意空格

        • 操作符:-gt大于,-lt小于,-eq等于,-ne不等于,-ge大于等于,-le小于等于。
      • 文件测试:【 操作符 文件或目录 】--注意空格

        • 1. 文件存在性测试:

          • -f:判断文件是否存在且为普通文件(非目录或特殊文件)。
          • -d:判断目录是否存在。
          • -e:判断文件或目录是否存在(通用测试)。
          • -b:判断文件是否存在且为块设备文件(如硬盘设备)。
          • -c:判断文件是否存在且为字符设备文件(如终端设备)。
          • -p:判断文件是否存在且为命名管道(FIFO)。
          • -S:判断文件是否存在且为 socket 文件。
          • -h-L:判断文件是否存在且为符号链接(软链接)。
        • 2. 权限相关测试:

          • -r:判断当前用户是否对文件或目录有可读权限。
          • -w:判断当前用户是否对文件或目录有可写权限。
          • -x:判断当前用户是否对文件或目录有可执行权限。
          • -O:判断文件是否存在且被当前用户拥有
          • -G:判断文件是否存在且属于当前用户的
        • 3. 文件属性测试:

          • -s:判断文件是否存在且文件大小大于 0
          • -g:判断文件或目录是否存在且**设置了 SGID(Set Group ID)**权限位。
          • -k:判断文件或目录是否存在且设置了粘滞位(sticky bit)。
      • 字符串比较:【 “字符串1” 操作符 “字符串2”】--注意空格

        • 操作符,=等于,!=不等于,-z字符串是否为0,=n字符串是否不为0
      • and(-a,&&)和or(-o,||)(多条件测试)

        • and表示多个条件同时满足,当前面条件不满足就不会检测后面的条件
        • or表示多个条件有一个满足就绪,当前面的条件满足就不会检测后面的条件
    • 流程控制:if

    • 模式匹配:case

http://www.dinnco.com/news/63443.html

相关文章:

  • 学校网站建设哪家好如何推广软件
  • 长春网站建设seo外包靠谱
  • 商旅通官网app广州网站优化服务商
  • 自助建站基础工作主要包括重庆seo网站推广优化
  • 艺术品网站开发电商运营平台
  • 做网站阜新想做app推广项目在哪找
  • 钦州做网站东莞优化网站关键词优化
  • 36kr网站用什么做的人工智能培训机构哪个好
  • 购物帮 做特惠的导购网站seo入门免费教程
  • 开发一个直播appseo优化网站技术排名百度推广
  • 做投标的在什么网站找信息html家乡网站设计
  • 做网站cnfg十大搜索引擎排名
  • 做场景秀的网站茂名seo快速排名外包
  • 服务器中安装网站中国人民银行网站
  • 家用电脑可以做网站服务器西青seo
  • 中国建设人才网官网查询优化网址
  • 南宁关键词排名提升seo关键词优化报价价格
  • 做网站需要准备的素材最新nba排名
  • linux打包网站做备份济南做seo的公司排名
  • 中建西部建设广通讯网站有没有专门做策划的公司
  • 做的好的网站营销微信公众号百度竞价推广怎么样才有效果
  • 湖南招标网官网湖南网站推广优化
  • 全包胶衣网站百度搜索app免费下载
  • 服务器里怎么建设网站互联网运营推广公司
  • 效果型网站建设2023最新15件重大新闻
  • 在爱学术网站做论文代写友情链接互换
  • 用手机域名做网站常州网站制作维护
  • 手表网站制作北京seo排名公司
  • 如何优化移动端网站seo知识总结
  • 网站主体负责人不是法人新东方