shell变量类型含义 长方形面积计算 截取相应字段方法
1.总结变量的类型及含义?
2.实现课堂案例计算长方形面积?(6种方式)
3.定义变量url=https://blog.csdn.net/weixin_45029822/article/details/103568815(通过多种方法实现)
1)截取网站访问的协议
2)截取网站访问账号信息
---------------------------------------------------------------------------------------------------------

1.总结变量的类型及含义?
-
(1)局部变量(普通变量):只在某个特定范围生效的变量,比如只能在当前进程中使用的变量,只能在函数中使用的变量。
在命令行设置:在当前进程生效
-
(2)全局变量(环境变量):可以在创建他们的shell及其派生出来的子进程中使用(su 切换用户的时候会读取新的环境变量)。
自定义环境变量和bash内置的环境变量。
-
位置参数预定义变量
-
#!/bin/bash# 方法1:直接使用变量计算 length=5 width=3 area=$((length * width)) echo "方法1:直接使用变量计算,面积为 $area"# 方法2:通过用户输入获取变量值 read -p "请输入长度:" length read -p "请输入宽度:" width area=$((length * width)) echo "方法2:通过用户输入获取变量值,面积为 $area"# 方法3:使用函数传参计算 calculate_area() {local l=$1local w=$2local result=$((l * w))echo $result }length=5 width=3 area=$(calculate_area $length $width) echo "方法3:使用函数传参计算,面积为 $area"# 方法4:使用bc命令进行浮点数计算 length=5 width=3 area=$(echo "scale=2; $length * $width" | bc) echo "方法4:使用bc命令进行浮点数计算,面积为 $area"#!/bin/bashurl="https://blog.csdn.net/weixin_45029822/article/details/103568815"# 方法1:使用grep命令和正则表达式提取协议 protocol=$(echo "$url" | grep -o "^[^:]\+") echo "方法1:使用grep命令和正则表达式提取协议,协议为 $protocol"# 方法2:使用awk命令提取协议 protocol=$(echo "$url" | awk -F: '{print $1}') echo "方法2:使用awk命令提取协议,协议为 $protocol"# 方法3:使用sed命令提取协议 protocol=$(echo "$url" | sed -n 's/^\([^:]\+\):\/\/.*/\1/p') echo "方法3:使用sed命令提取协议,协议为 $protocol"# 方法4:使用正则表达式提取账号信息 account=$(echo "$url" | grep -o "//[^/]\+" | cut -c 3-) echo "方法4:使用正则表达式提取账号信息,账号信息为 $account"# 方法5:使用awk命令提取协议和账号信息 protocol_account=$(echo "$url" | awk -F: '{print $1}' | awk -F// '{print $2}') echo "方法5:使用awk命令提取协议和账号信息,协议和账号信息为 $protocol_account"上面是用gpt查询的方法用于拓宽思路
echo ${url%:*}
# httpsexpr substr $url 1 5
# httpsecho $url | cut -nb 1-5
# https
echo $url | cut -d : -f 1
# httpsecho $url | cut -d / -f 4
# weixin_45029822expr substr $url 23 15
# weixin_45029822echo ${url:22:15}
# weixin_45029822tmp=${url#*net/}
echo ${tmp%%/*}
# weixin_45029822
相关文章:
shell变量类型含义 长方形面积计算 截取相应字段方法
1.总结变量的类型及含义? 2.实现课堂案例计算长方形面积?(6种方式) 3.定义变量urlhttps://blog.csdn.net/weixin_45029822/article/details/103568815(通过多种方法实现) 1)截取网站访问的协议 …...
Java:从单线程计数器到多线程数据同步synchronized和原子类Atomic
目录 使用单线程使用多线程使用多线程 synchronized使用多线程 原子类AtomicLong 使用单线程 单线程修改计数器的值,没有发生问题,每次运行结果都是10000,不过程序耗时较长 package com.example;/*** 计数器*/ class Counter {private st…...
提前进入行业顶尖阵营:高性能计算实习的竞争优势
如今就业越来越内卷,尤其是计算机行业更是如此。加上GPT以及大模型的加持,各大企业纷纷降本增效,普通程序员逐渐失去竞争力。想要在竞争激烈的就业市场中脱颖而出,提前进入行业顶尖阵营是一个明智的选择。而高性能计算实习将为您提…...
Java程序设计入门教程--标识符和关键字
目录 标识符 标识符的约定 标识符 1. 定义 用来标识类名,变量名,方法名,类型名,数组名,文件名的有效序列称为标识符。简单地说,标识符就是一个名字。 2. 标识符命名规则 (1)大小…...
国产IC芯片自动化测试系统ATECLOUD,助力芯片测试自动化
IC芯片测试成本是影响制造和加工成本的重要因素。在某些情况下,测试成本可能占到器件总成本的40%左右。为了降低测试成本,可以优化测试程序并研发多工位测试。同时,必须平衡良品率和测试时间,以实现最佳的成本控制。本篇文章纳米软…...
BeanFactory和ApplicationContext有什么区别?
BeanFactory和ApplicationContext有什么区别? BeanFactory和ApplicationContext有什么区别? BeanFactory和ApplicationContext有什么区别? BeanFactory (轻量级) 和ApplicationContext(高级特性和框架)是Spring的两大核心接口,都…...
js的BOM对象中的window、location使用
说明:BOM的全称是Browser Object Model,浏览器对象模型,有Window(浏览器窗口)、Navigator(浏览器)、Screen(屏幕)、History(历史记录)和Location&…...
DAY 68 redis高可用的主从复制、哨兵、cluster集群
Redis 高可用 什么是高可用 在web服务器中,高可用是指服务器可以正常访问的时间,衡量的标准是在多长时间内可以提供正常服务(99.9%、99.99%、99.999%等等)。 但是在Redis语境中,高可用的含义似乎要宽泛一些,除了保证提供正常服…...
leetcode 1209 学会删除字符串
删除字符串的经典kotlin操作: val mTemp (temp.text).replace(Regex("℃"),"") 以下是题目! 1209. 删除字符串中的所有相邻重复项 II 提示 中等 174 相关企业 给你一个字符串 s,「k 倍重复项删除操作」将会从 s…...
JavaScript6
一、概念 ES6是JavaScript语言的标准。 新特性:let和const命令、变量的解构赋值、字符串函数对象数组等扩展。 环境准备:需要安装NodeJs。 二、新特性 1、let let命令用来声明变量。他的用法类似var,但所声明的变量,只在let命令…...
轻松安装Redis:不用担心配置问题
一、Centos安装Redis 1.安装 EPEL 源 Redis 不在 CentOS 官方仓库中,需要安装 EPEL 源才能访问到 Redis 软件包。运行以下命令安装 EPEL 源: sudo yum install epel-release 2.安装 Redis 使用以下命令安装 Redis: sudo yum install re…...
ChatGPT学习研究总结
目录 ChatGPT研究总结 一、程序接入用途不大 二、思考:如何构建一个类似ChatGPT的自定义模型 一些ChatGPT研究学习资料(来源网络) (1)一文读懂ChatGPT模型原理 (2)MATLAB科研图像处理——…...
SpringBoot枚举入参实战
文章目录 前言一、什么是枚举?二、枚举的优点三、枚举的缺点四、使用步骤1.代码实现1.1.枚举1.2.实体1.3.控制层 2.Postman测试2.1.Get请求2.1.1.枚举参数2.1.2.对象枚举属性参数 2.2.Post请求2.2.1.枚举参数2.2.2.对象枚举属性参数 2.3.Put请求2.3.1.枚举参数2.3.2…...
Ansible介绍
文章目录 Ansible介绍Ansible的架构为什么要有Ansible TowerAnsible Tower Ansible介绍 Ansible是一种自动化工具,可以用于自动化部署、配置和管理IT基础设施。它是一种基于Python的开源软件,提供了一个简单易用的语言和工具集,使得自动化管…...
GPT-4的免费使用方法分享
目录 方法1:使用Ora.sh的LLM应用 方法2:使用https://steamship.com 方法3:使用https://nat.dev 方法4:http://tdchat.vip 方法5:使用Poe网站或App 方法6:使用 Opencat App 方法7:使用https://Huggin…...
一个产品的诞生
一个产品的诞生 一个产品的诞生通常需要经历多个阶段,包括市场调研、产品设计、原型制作、测试和生产等。在市场调研阶段,公司会了解消费者的需求和市场趋势,以确定产品的定位和特点。在产品设计阶段,设计师会根据市场调研结果和…...
MQTT与传统的HTTP协议对比,优势在哪里呢?
HTTP是应用最为广泛和流行的协议。但是MQTT在过去的几年里迅速取得了进展。在讨论物联网开发的时候,开发者必须在这两者之间作出选择。 MQTT集中于数据,而HTTP集中于文档。HTTP是一个用于客户端-服务器计算的请求-响应协议,它并非总是为移动设…...
热榜!阿里出品2023版Java架构师面试指南,涵盖Java所有核心技能
最近很多粉丝朋友私信我说:熬过了去年的寒冬却没熬过现在的内卷;打开Boss直拒一排已读不回,回的基本都是外包,薪资还给的不高,对技术水平要求也远超从前;感觉Java一个初中级岗位有上千人同时竞争࿰…...
【小程序】封装时间选择组件:用单元格van-cell和插槽slot,包括起始时间和终止时间
效果 可以选择起始时间和终止时间,并显示。 时间选择器放在van-cell的value插槽中。 用的库: https://vant-contrib.gitee.io/vant-weapp/#/home https://dayjs.fenxianglu.cn/category/ 用的组件:Cell单元格、DatetimePicker时间选择、Pop…...
华为OD机试真题B卷 Java 实现【猜密码】
一、题目描述 小杨申请了一个保密柜,但是他忘记了密码。只记得密码都是数字,而且所有数字都是不重复的。 请你根据他记住的数字范围和密码的最小数字数量,帮他算下有哪些可能的组合,规则如下: 输出的组合都是从可选的数字范围中选取的,且不能重复;输出的密码数字要按照…...
基于springboot+vue电子商务网站用户行为分析hx0901
文章目录详细视频演示技术介绍功能介绍核心代码系统效果图源码获取详细视频演示 文章底部名片,获取项目的完整演示视频,免费解答技术疑问 技术介绍 开发语言:Java 框架:ssm JDK版本:JDK1.8 服务器:tomca…...
AI股票分析师daily_stock_analysis进阶技巧:定制你的专属分析模板
AI股票分析师daily_stock_analysis进阶技巧:定制你的专属分析模板 1. 为什么需要定制分析模板 当你第一次使用AI股票分析师daily_stock_analysis时,可能会被它开箱即用的分析能力所惊艳。但随着使用深入,你会发现通用模板有时无法完全满足你…...
终极指南:如何为开源本地AI模型平台Gallery44贡献代码
终极指南:如何为开源本地AI模型平台Gallery44贡献代码 【免费下载链接】gallery A gallery that showcases on-device ML/GenAI use cases and allows people to try and use models locally. 项目地址: https://gitcode.com/GitHub_Trending/gallery44/gallery …...
OpenPAI存储管理完全手册:支持NFS、SMB等多种存储方案
OpenPAI存储管理完全手册:支持NFS、SMB等多种存储方案 【免费下载链接】pai Resource scheduling and cluster management for AI 项目地址: https://gitcode.com/gh_mirrors/pa/pai OpenPAI作为开源AI平台,提供了完整的存储管理解决方案…...
逻辑分析仪采样率设置玄学:用Acute 3134E抓eMMC信号时如何平衡精度与时长
逻辑分析仪采样率设置玄学:用Acute 3134E抓eMMC信号时如何平衡精度与时长 在消费电子维修和固件开发领域,捕获准确的eMMC信号波形往往决定着故障诊断的成败。Acute 3134E逻辑分析仪作为工程师手中的利器,其采样率设置却常被戏称为"玄学&…...
Llama-3.2V-11B-cot保姆级教学:Streamlit缓存机制加速推理响应
Llama-3.2V-11B-cot保姆级教学:Streamlit缓存机制加速推理响应 1. 项目概述 Llama-3.2V-11B-cot是基于Meta Llama-3.2V-11B-cot多模态大模型开发的高性能视觉推理工具,专为双卡4090环境深度优化。这个工具解决了视觉权重加载的关键Bug,支持…...
深入解析C语言malloc(0)的内存分配机制
1. 深入解析 malloc(0) 的行为机制在 C 语言编程中,内存管理是一个基础但极其重要的话题。malloc 函数作为动态内存分配的核心工具,其行为规范在 C 标准中有明确定义。然而,当我们遇到像 malloc(0) 这样的边界情况时,事情就变得有…...
gemma-3-12b-it多模态边界探索:对动态GIF首帧、视频缩略图的理解能力实测
gemma-3-12b-it多模态边界探索:对动态GIF首帧、视频缩略图的理解能力实测 1. 测试背景与目的 最近在多模态AI领域,Google推出的Gemma 3系列模型引起了广泛关注。特别是12B参数的指令调优版本gemma-3-12b-it,号称能够同时处理文本和图像输入…...
Activiti7实战指南:从流程实例到任务分配的全流程解析
1. Activiti7流程引擎核心概念解析 Activiti7作为当前最流行的开源工作流引擎之一,在企业级业务流程管理中扮演着重要角色。我第一次接触Activiti是在2014年参与某金融项目的审批系统开发时,当时就被它优雅的设计理念所吸引。经过多年实战,我…...
《YOLOv11 实战:从入门到深度优化》003、数据集准备:自定义数据集的标注、整理与增强
003、数据集准备:自定义数据集的标注、整理与增强 上周调一个产线缺陷检测项目,模型在测试集上mAP冲到0.92,产线一跑直接崩了——传送带反光、零件旋转、背景杂物,现实世界从来不会按着COCO数据集的规矩来。这才痛定思痛ÿ…...
