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

牛仔裤网站设计/百度开户流程

牛仔裤网站设计,百度开户流程,1688采购批发网,现货交易平台合法的有几家文章目录一,Shell 脚本概述1.1 shell 脚本的概念1.2 Shell 脚本应用场景1.3 Shell 的作用1.4 Shell 基本的构成1.5 脚本的执行1.6 上述执行方法的区别1.7 重定向操作1.7.1交互式硬件设备1.7.2 重定向操作1.8 管道操作符号二,Shell 脚本变量2.1 变量概述2…

文章目录

  • 一,Shell 脚本概述
    • 1.1 shell 脚本的概念
    • 1.2 Shell 脚本应用场景
    • 1.3 Shell 的作用
    • 1.4 Shell 基本的构成
    • 1.5 脚本的执行
    • 1.6 上述执行方法的区别
    • 1.7 重定向操作
      • 1.7.1交互式硬件设备
      • 1.7.2 重定向操作
    • 1.8 管道操作符号
  • 二,Shell 脚本变量
    • 2.1 变量概述
      • 2.1.1 定义:
      • 2.1.2 变量的格式
      • 2.1.3 变量命名规则
      • 2.1.4 查看变量名
    • 2.2 自定义变量
    • 2.3从键盘输入内容为变量赋值
    • 2.4 设置变量的作用范围
    • 2.5 整数变量的运算
      • 2.5.1 expr 进行运算
    • 2.6环境变量
      • 2.6.1设置环境变量
    • 2.7 只读变量
    • 2.8位置变量
      • 2.8.1位置变量有哪些
      • 2.8.2 $*和 $@的区别

一,Shell 脚本概述

1.1 shell 脚本的概念

  • 将要执行的命令按顺序保存到一个文本文件
  • 要给该文件可执行权限
  • 可以结合各种Shell 控制语句以完成更复杂的操作

1.2 Shell 脚本应用场景

  • 重复性操作
  • 交互性任务
  • 批量事务处理
  • 服务运行状态监控
  • 定时任务执行

1.3 Shell 的作用

Shell --命令解释器,介于系统内核与用户之间,一种被称为解释性语言或者脚本语言的计算机语言。充当“翻译官”的作用
Linux 系统中运行的一种特殊程序,用户登录Linux系统时,自动加载一个Shell程序
Linux 系统中默认使用的Shell程序时Bash,文件位于 /bin/bash
不同Shell 的内部指令,运行环境会有区别
在这里插入图片描述

1.4 Shell 基本的构成

  • 脚本声明
  • 注释信息
  • 可执行语句
    我们新建一个脚本用.sh结尾命名
    在这里插入图片描述
    在这里插入图片描述

给他一个可执行权限
在这里插入图片描述

1.5 脚本的执行

bash test.sh
文件名直接执行(绝对路径或者相对路径执行)
source text.sh或 . test.sh执行
在这里插入图片描述

1.6 上述执行方法的区别

bash +脚本名:新开了一个bash环境,然后在这个新的bash环境中运行脚本内程序

文件名直接执行:这个方法是将脚本作为一个可执行程序,所以,要写脚本的绝对路径或者相对路径。由于脚本本身作为可执行程序,所以,会创建名为脚本名(test.sh) 的子进程

source或者点 " . ": 这两个命令都是在当前 shell 环境下,使用当前的解释器读取并执行命令,不会新开一个shell 环境或者 其他的子进程。由于这两个命令都是将 脚本作为参数,所以,不需要脚本有 执行权限x

将之前的脚本内容修改,加上 ‘sleep 1000’
在这里插入图片描述
用pstree命令查看进程树

在这里插入图片描述
bash运行脚本后,打开另一个终端,查看进程树
在这里插入图片描述
用bash命令新开了一个bash环境执行了脚本

用./tesh.sh运行脚本后,查看进程树
在这里插入图片描述
可以看到新开了一个tesh.sh的子进程,子进程下面有sleep进程

source text.sh运行脚本
在这里插入图片描述

是直接在当前bash环境下执行sleep进程

1.7 重定向操作

1.7.1交互式硬件设备

  • 标椎输入: 从该设备接收用户输入的数据
  • 标椎输出:通过该设备向用户输出数据
  • 标椎错误输出:通过该设备报告执行出错信息
类型设备文件文件描述编号默认设备
标椎输入/dev/stdin0键盘
标椎输出/dev/stdou1显示器
标椎错误输出/dev/stderr2显示器

1.7.2 重定向操作

类型操作符用途
重定向输入<从指定的文件读取,而不是从键盘输入
覆盖重定向输出> 或者 1>将正确的输出的结果保存到指定文件(覆盖原有内容)
追加重定向输出>> 或者 1>>将正确的输出的结果保存到指定文件(追加在文件尾部)
覆盖标椎错误输出2>将错误的输出的结果保存到指定文件(覆盖原有内容)
追加标椎错误输出2>>将错误的输出的结果保存到指定文件(追加在文件尾部)
覆盖混合输出&>将标准输出,标准错误的内容保存到同一文件(覆盖原有内容)
追加混合输出&>>将标准输出,标准错误的内容保存到同一文件(追加在文件尾部)
操作符用途
>&2 或者 1>&2将标准输出重定向到标准错误(即,让正确输出可以被 2> 收集)
2>&1将标准错误输出重定向到标椎输出(即,让错误的输出可以被 > 收集)

1,重定向输入
创建文件a,输入内容123

[root@caoyuzhou ~]# cat < a abc #以文件a为输入设备
[root@caoyuzhou ~]# cat a abc   #以键盘为输入设备

其表示意义不一样
在这里插入图片描述
2,标准重定向输出
如果前面命令返回值为0(即,命令正确),则将结果重定向输出到指定文件

返回值: 命令运行正确,则返回值为0 .命令运行错误,则返回非 0 值。可以用echo $? 查看上一条命令的返回值
在这里插入图片描述

在这里插入图片描述
ls +是我乱输的,echo返回值为非0,表示不成功

3,标椎错误输出

接收错误输出的信息(命令返回值为 非0 值),重定向到指定文件
在这里插入图片描述
在这里插入图片描述
可以看到返回值还是2

1.8 管道操作符号

管道操作符号“|”,将左侧命令输出结果,作为右侧命令的处理对像
命令1 | 命令2 【……|命令n】
在这里插入图片描述
管道符号加上xargs 可将前面的结果作为参数输出给后面的命令
在这里插入图片描述
如果不加管道符号,则会删除失败
在这里插入图片描述
并且用echo $?查看是执行成功的

二,Shell 脚本变量

2.1 变量概述

2.1.1 定义:

变量就是会变的量。可以通过变量名得到变量值。在内存上开辟一个记录数据的空间,给它起个名字,如name,num 等,这些就是变量名。而存放在该空间的数据就是变量的值。

2.1.2 变量的格式

变量名=变量值

2.1.3 变量命名规则

  • 变量名必须是以字母或下划线开头,名字中间只能由字母,数字,下划线"_" 组成,不能有小数点,特殊字符,空格,标点符号等。
  • 变量名的长度不得超过255 个字符。
  • 变量名在有效范围内必须是唯一的。
  • 变量名不能和系统命令,系统变量等冲突。
  • 变量名可以将开头字母打下,以防和系统命令等冲突。

2.1.4 查看变量名

用echo $变量名,查看变量的值
在这里插入图片描述

使用set查看当前Shell里所有变量

在这里插入图片描述

2.2 自定义变量

删除变量格式:
unset 变量名
在这里插入图片描述

三种引号:
双引号 “”:允许通过$符号引用其他变量值,解释特殊符号 的释义
单引号’‘:禁止引用其他变量值, $视为普通字符,不解释
反撇号 `:命令替换,可执行命令并提取输出后的结果,与 $( )作用相同
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

2.3从键盘输入内容为变量赋值

read 【-p “提示信息”】变量名
在这里插入图片描述

2.4 设置变量的作用范围

格式:
export 变量名
export 变量名=变量值

局部变量:
直接设置的变量是局部变量,只在当前shell 环境生效,如果重开终端,或者开启一个新的shell 环境,或者登陆其他用户账号,则变量失效
在这里插入图片描述
bash:切换一个新的bash环境

那么如何设置全局都有呢
在这里插入图片描述
注意,变量为单个字符会失效

在这里插入图片描述
同样这个单个字符也会失效

2.5 整数变量的运算

2.5.1 expr 进行运算

expr 变量1 运算符 变量2 【运算符 变量3……】
常用运算符:

  • 加法:+
  • 减法:-
  • 乘法:*
  • 除法:/
  • 求模(取余)运算:%

在这里插入图片描述
同时遵循数学法则先乘除后加减
在这里插入图片描述
$[ ]为数学中的括号功能

同时也可以用变量运算

在这里插入图片描述
echo $(( ))可以直接运算,带入变量同理

2.6环境变量

定义: 由系统提前创建,用来设置用户的工作环境

2.6.1设置环境变量

配置文件: /etc/profile , ~/bash_profile

/etc/profile : 针对全局的设置

~/bash_profile : 只对该用户生效

常见的环境变量:

环境变量释义
PATH指定命令的搜索路径(linux 根据PATH 的值搜索命令)
HOME当前用户的家目录
HISTSIZE历史命令最大条数
LOGNAME当前登录用户名
USER当前用户名
SHELL当前用户使用的shell环境
HOSTNAME当前主机名
PWD当前目录名

查看环境变量:

env  #显示当前所有的环境变量

2.7 只读变量

该变量只能使用,无法修改其变量值,放在内存的只读区域
适用于变量值不允许修改的情况
格式:

readonly 变量名

在这里插入图片描述

在这里插入图片描述
而且是删都删不掉的!!!

2.8位置变量

2.8.1位置变量有哪些

变量含义
$ 0当前脚本文件名
$ n第n个参数。用来传递给脚本或者函数
$ #传递给脚本或者函数的所有参数
$ *传递给脚本或函数的所有参数
$ @传递给脚本或者函数的所有参数
$ ?上个命令,函数,的返回值。0为真,非0位假
$ $当前shell 进程,脚本进程的PID

建一个脚本来执行,名字为test.sh
在这里插入图片描述

2.8.2 $*和 $@的区别

" $ * " 与 " $@" 都是表示传递给函数或者脚本的所有参数。

当 $* 和 $@ 没有 加 双引号 " " 时,都是将接受到每一个参数,看成独立的数据

当 $* 和 $@ 加 双引号 " " 时 , $* 将所有的参数看成一个数据, $@ 依然将每个参数看成独立的参数

在这里插入图片描述
第一段:
将变量∗的值赋给a每有一个参数循环一次(只有一次循环)第二段:将*的值赋给a 每有一个参数循环一次(只有一次循环) 第二段: 将a:@的值赋给b
每有一个参数循环一次(有三次循环)
脚本内容输出后:

在这里插入图片描述

http://www.lbrq.cn/news/1110475.html

相关文章:

  • 优秀网站管理员/国家卫健委:不再发布每日疫情信息
  • 泉州做网站多少钱/微信广告
  • 爱站网站长seo综合查询/班级优化大师下载安装最新版
  • a网站建设/网站维护中
  • 有没有专门做根雕的网站/中文域名注册管理中心
  • 网站 网安备案查询/谷歌浏览器下载手机版安卓
  • 网站建设公司推荐 知乎/搜索引擎营销的主要方式有哪些?
  • 男人和女人做羞羞的免费网站/企业整站seo
  • 查询类网站怎么做/石家庄新闻网头条新闻
  • 有什么网站可以做跳转连接的/sem论坛
  • 做代练去什么网站安全吗/搜索引擎营销简称为
  • 怀柔区住房和城乡建设委员会网站/seo竞争对手分析
  • 上海做网站优化价格/沈阳网站关键词优化公司
  • windous 系统 做网站/杭州网站优化培训
  • 零食网站建设的必要性/seo快速工具
  • 移动网站设计尺寸/简述搜索引擎优化
  • 濮阳网站制作/推广seo网站
  • 英文做影评的网站/产品互联网推广
  • 上海英文网站建设/二级域名注册
  • 最好网页游戏网站/热搜词工具
  • 网站开发看谁的教程/在线资源链接
  • 做网站不备案用香港空间可以吗/百度seo优化怎么做
  • 人人车网站建设费用/文库百度登录入口
  • 广州市酒店网站设计/营销型网站策划书
  • 沈阳网站制作流程/最新腾讯新闻
  • 政府网站建设团队/营销方式和手段
  • 网易那个网站可以做字幕/国内好的seo网站
  • 付费网站模板/怎么开网店
  • 郑州做网站比较好公司/如何优化网站排名
  • 怎么开始做网站/今天重要新闻
  • 2025外卖江湖:巨头争霸,谁主沉浮?
  • 某邮生活旋转验证码逆向
  • Docker面试题
  • Vue3 从 0 到 ∞:Composition API 的底层哲学、渲染管线与生态演进全景
  • 前端基础——B/S工作原理、服务器与前端三大件
  • SpringBoot中使用MessageSource的getMessage获取i18n资源文件中的消息