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

海南做网站的google官方入口

海南做网站的,google官方入口,可以做产品宣传的网站,拓者设计吧免费注册目录 一.函数 1.1函数的定义 1.2函数使用的注意点 1.3函数相关的操作 1.3.1定义参数 1.3.2查看函数 1.3.3调用函数 1.3.4函数的传参 1.3.5函数的返回值 1.3.6删除函数 1.3.7函数的作用范围 1.3.8函数文件 1.4函数练习 二.数组 2.1数组的定义 2.2数组的作用…

目录

一.函数

1.1函数的定义

1.2函数使用的注意点

1.3函数相关的操作 

1.3.1定义参数

1.3.2查看函数 

1.3.3调用函数 

1.3.4函数的传参

1.3.5函数的返回值

1.3.6删除函数

1.3.7函数的作用范围 

1.3.8函数文件

1.4函数练习

二.数组 

2.1数组的定义

2.2数组的作用

2.3数组的定义

2.4查看数组

2.5数组的分类

2.5.1普通数组

2.5.2关联数组 

2.6数组相关的操作

2.6.1查看数组相关的信息

2.6.2遍历数组

2.6.2删除数组 

2.6.3替换数组

2.7 数组练习----点名脚本


一.函数

1.1函数的定义

在Shell脚本中,函数是一组可以重复使用的命令集合,它们可以接收参数并返回结果。

1.2函数使用的注意点

  1. 默认情况下,函数内定义的变量是全局的,必须使用local关键字声明局部变量。

  2. 函数必须在调用前定义。

  3. 函数名可能与命令或别名冲突

  4. 函数内部错误不会自动终止脚本执行

  5. 需要手动处理错误状态

  6. Shell函数参数传递是位置参数,没有命名参数

 补充:什么是位置参数

位置参数的定义:位置参数是指通过参数在参数列表中的位置顺序来识别的参数,而不是通过参数名称。

# 定义函数
example_func() {echo "第一个参数: $1"echo "第二个参数: $2"
}# 调用函数
example_func "value1" "value2"

在这个例子中:

  • $1 对应第一个传递的值 "value1"

  • $2 对应第二个传递的值 "value2"

  • 参数完全由位置决定,与名称无关

1.3函数相关的操作 

1.3.1定义参数

方式一:
function_name() {函数体}方式二:
function function_name {函数体}方式三:
function function_name () {函数体}以上三种方式第一种最常用

1.3.2查看函数 

declare -F
#查看所有已定义的函数的函数名declare -F function_name
#查看指定函数的函数名declare -f
#查看所有已定义的函数的内容declare -f function_name
#查看指定函数的内容

1.3.3调用函数 

再次强调函数在调用请,必须先定义

#先定义函数
function_name() {
# 函数体
}#调用函数
function_name

1.3.4函数的传参

Shell函数通过位置参数接收传递的

​
# 定义函数
greet() {echo "Hello, $1! You are $2 years old."
}# 调用函数(参数按位置传递)
greet "dhf" 24输出
Hello, dhf! You are 24 years old.

1.3.5函数的返回值

函数可以通过return语句设置返回值,脚本中可以用$?变量表示该值。

使用 return 语句返回只能是 0-255 的整数,0 表示成功,非0表示失败;通过 $? 获取返回值

返回值的作用:

  1. 对函数执行的结果进行判断和处理:函数可以返回不同的值来表示不同的执行状态或错误情况。

  2. 传递函数执行的结果给其他部分:函数的返回值可以被赋值给变量,能将函数的计算结果传递给其他命令或者再次使用。

  3. 作为脚本的退出状态码:根据不同的返回值来设置不同的退出状态码。

 1.3.6删除函数

unset function_name 
#从当前的 Shell 环境中删除指定的函数

1.3.7函数的作用范围 

默认情况下,函数内定义的变量是全局的,必须使用local关键字声明局部变量。

1.3.8函数文件

将函数代码写入一个脚本文件,在需要的时候调用该脚本文件,相当于直接调用函数。
Shell脚本中使用函数文件时,需要写上
函数文件的绝对路径

1.4函数练习

 

[ [ == ] ] #开启通配符
[ [ =~ ] ] #开启正则表达式 #!/bin/bash # 定义系统检测函数
os () {if grep -qi 'centos' /etc/os-release; thenecho "centos"elif grep -qi 'ubuntu' /etc/os-release; thenecho "ubuntu"elseecho "不支持此系统"fi
}# 调用函数并获取结果
system_type=$(os)# 根据系统类型执行安装
if [ "$system_type" = "centos" ]; thenecho "→ 检测到CentOS系统"echo "→ 正在安装httpd..."yum install -y httpdecho "✔ httpd安装完成"elif [ "$system_type" = "ubuntu" ]; thenecho "→ 检测到Ubuntu系统"echo "→ 正在安装apache2..."apt install apache2 -yecho "✔ apache2安装完成"elseecho "× 错误:$system_type"echo "× 安装失败"
fi

二.数组 

2.1数组的定义

数组是在连续内存空间中存储的一组相同类型的数据元素,每个元素可以通过索引(下标)来访问。

2.2数组的作用

  1. 数据存储:高效存储大量同类型数据

  2. 快速访问:通过索引可以在O(1)时间复杂度内访问任意元素

  3. 算法基础:是许多高级数据结构和算法的基础

  4. 批量处理:便于对一组数据进行统一操作

2.3数组的定义

方式一: 
数组名=( value0 value1 value2 value3 ......)方式二:
数组名=([0]=value [1]=value1 [2]=value2 ....)
#[0] [1] [2] 为下标值方式三:
列表名="value0 value1 value2 value3 ...... "
数组名=($列表名)方式四:
数组名[0]="value1"数组名[1]="value2"数组名[2]="value3"#一次只赋一个值方式五:
read -a 数组名
要输入的内容 #数组内容 

2.4查看数组

假设要查看的数组是array1. 查看整个数组
# 查看所有元素(保留引号和空格)
echo "数组所有元素: ${array[@]}"# 查看所有元素(展开为单独的词)
echo "数组展开元素: ${array[*]}"# 使用declare命令查看数组定义
declare -p array2. 查看数组元素
# 查看特定索引的元素
echo "第一个元素: ${array[0]}"
echo "最后一个元素: ${array[-1]}"# 查看索引范围(切片)
echo "第2到第4个元素: ${array[@]:1:3}"

后面还有关联数组的查看方法

2.5数组的分类

数组可以分为普通数组和关联数组 

2.5.1普通数组

  1. 普通数组使用 数字索引(从 0 开始)来存储和访问元素。

  2. 声明时使用 declare 或 declare -a 命令。

  3. 元素之间的顺序是固定的

1.定义方式
# 方式1:直接赋值
arr=("wind" "fire" "water")# 方式2:逐个赋值
arr[0]="wind"
arr[1]="fire"
arr[2]="water"2.访问方式
echo ${arr[0]}    # 输出 "wind"
echo ${arr[1]}    # 输出 "fire"
echo ${arr[-1]}   # 输出 "water"
​​

2.5.2关联数组 

  1. 使用任意字符串作为键来访问和存储元素。

  2. 声明时使用 declare -A 命令。

  3. 元素之间的顺序是不固定的,通过键进行访问。

1.定义方式:
# 必须先声明为关联数组
declare -A assoc_arr# 赋值方式
assoc_arr=(["name"]="Alice"["age"]=25["city"]="New York"
)# 或者逐个赋值
assoc_arr["name"]="Bob"
assoc_arr["age"]=302.访问方式:
echo ${assoc_arr["name"]}  # 输出 "Alice"
echo ${assoc_arr["age"]}   # 输出 25​

2.6数组相关的操作

2.6.1查看数组相关的信息

1.显示下标个数
echo ${#a[*]} 
或者
echo ${#a[@]}        2.获取数组列表中所有元素的值
echo ${a[*]}
或者
echo ${a[@]}3.读取数组下标/索引
echo ${!a[*]}

2.6.2遍历数组

按顺序访问数组中的每个元素。 

#举个例子##!/bin/bash
a=(1 2 3 4 5)
for i in ${a[@]}
do
echo $i
done

2.6.2删除数组 

1.删除整个数组
unset 数组名
示例:
fruits=("apple" "banana" "orange")
declare -A person=(["name"]="Alice" ["age"]=25)unset fruits      # 删除普通数组
unset person      # 删除关联数组2.删除数组中的特定元素
对于普通数组:unset array_name[index]
示例:
fruits=("apple" "banana" "orange")
unset fruits[1]   # 删除索引为1的元素("banana")对于关联数组:unset array_name["key"]
示例:
declare -A person=(["name"]="Alice" ["age"]=25 ["city"]="NY")
unset person["age"]  # 删除"age"键值3.清空数组
array_name=()
示例:
colors=("red" "green" "blue")
colors=()         # 清空数组

 2.6.3替换数组

方式一​
普通数组:
array_name[index]=新值
示例:
fruits=("apple" "banana" "orange")
fruits[1]="pear"  # 将索引1的元素从"banana"改为"pear"关联数组:
array_name["key"]=新值
示例:
declare -A person=(["name"]="Alice" ["age"]=25)
person["age"]=26  # 修改age的值方式二
​a=(1 2 3 4 5)echo ${a[@]/4/66} 	#${数组名[@或*]/查找字符/替换字符}
echo ${a[@]}			#并不会替换数组原有内容a=(${a[@]/4/66})	#要实现改变原有数组,可通过重新赋值实现
echo ${a[@]}

2.7 数组练习----点名脚本

#点名脚本#!/bin/bash
a=( aa bb cc dd ee ff )
x=${#a[@]}
j=`echo $[RANDOM%$x]`
n=$[ j+1 ]
echo "学号是 $n"
echo ${a[$j]}

http://www.dtcms.com/wzjs/60944.html

相关文章:

  • 自己做的网站出现左右滑动条品牌推广策略包括哪些内容
  • 做的好的ppt下载网站网址大全浏览器app
  • 网站建设教育类旧式网站近一周新闻热点事件
  • 网站404页面的作用谷歌seo优化
  • 网站建设diy服务器域名查询
  • 网站后台设置关键词在哪设网络营销顾问招聘
  • 佛山网站建设机构网站运营
  • 做网站需要api吗市场调研报告怎么做
  • 做外贸电商网站济南网站优化公司排名
  • 微商城客服培训机构优化
  • 静态网站开发用到的技术成品网站1688入口网页版
  • 网站是用sql2012做的_在发布时可以改变为2008吗网络营销的概念和含义
  • 设计师应该看的网站营销方案怎么写
  • 苏州建设公司网站淘宝推广方法有哪些
  • 免费的求职简历模板网站seo网站内部优化方案
  • 厘米售卡站怎么做网站云巅seo
  • 怎么样购买网站空间友情链接
  • 昆明网站设计能实现什么功能自动app优化
  • html5网站开发工具网页制作接单平台
  • 网站开发公司哪里济南兴田德润实惠吗电商平台怎么运营的
  • 百度网站关键词和网址seo怎样才能优化网站
  • python做网站 框架2023年8月份新冠
  • 便宜手机网站建设个人博客网站怎么做
  • 青岛需要做网站的公司搜索引擎优化效果
  • 洛阳住房和城乡建设厅网站免费做网站
  • 直播网站提供搜索引擎优化公司
  • 网站设计遇到难题产品软文范例100字
  • 做酒店网站设计seo快速优化报价
  • 重庆建设工程质量协会网站谷歌seo搜索引擎优化
  • 和网站建设相关的行业seo的重要性