首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
函数参数与返回值
传递变长参数
defer 和追踪
内置函数
递归函数
将函数作为参数
闭包
应用闭包:将函数作为返回值
使用闭包调试
计算函数执行时间
通过内存缓存来提升性能
声明和初始化
切片
For-range 结构
切片重组(reslice)
切片的复制与追加
字符串、数组和切片的应用
声明、初始化和 make
测试键值对是否存在及删除元素
for-range 的配套用法
map 类型的切片
map 的排序
将 map 的键值对调
标准库概述
regexp 包
锁和 sync 包
精密计算和 big 包
自定义包和可见性
为自定义包使用 godoc
使用 go install 安装自定义包
自定义包的目录结构、go install 和 go test
通过 Git 打包和安装
Go 的外部包和项目
在 Go 程序中使用外部库
结构体定义
使用工厂方法创建结构体实例
使用自定义包中的结构体
带标签的结构体
匿名字段和内嵌结构体
方法
类型的 String() 方法和格式化描述符
垃圾回收和 SetFinalizer
当前位置:
首页>>
技术小册>>
go编程权威指南(二)
小册名称:go编程权威指南(二)
**Shell 变量** 定义变量时,变量名不加美元符号($,PHP语言中变量需要),如: your\_name="xiaofeng" 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则: * 命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。 * 中间不能有空格,可以使用下划线 \_。 * 不能使用标点符号。 * 不能使用bash里的关键字(可用help命令查看保留关键字)。 有效的 Shell 变量名示例如下: LD\_LIBRARY\_PATH \_var var2 无效的变量命名: ?var=123 user*name=xiaofeng ------------ **使用变量** 使用一个定义过的变量,只要在变量名前面加美元符号即可,如: 实例 ```bash your_name="xiaofeng" echo $your_name echo ${your_name} ``` 说明: 使用变量有两种方式: - 一种是在变量名前面加上$var_name - 第二种是${var_name} ------------ **删除变量** 使用 unset 命令可以删除变量。语法: unset variable_name 变量被删除后不能再次使用。 实例 ```bash #!/bin/sh myUrl="https://www.baidu.com" unset myUrl echo $myUrl ``` 删除变量后,我们再使用echo输出,输出的内容是空。 ------------ ### Shell中的字符串 字符串是shell编程中最常用最有用的数据类型,字符串可以用单引号,也可以用双引号,也可以不用引号。 ##### 单引号 ```bash str='this is a string' ``` 单引号字符串的限制: * 单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的; * 单引号字串中不能出现单独一个的单引号(对单引号使用转义符后也不行),但可成对出现,作为字符串拼接使用。 ##### 双引号 ```bash your_name="xiaofeng" str="Hello, I know you are "$your_name"! \n" echo -e $str ``` 输出结果为: Hello, I know you are "xiaofeng"! 双引号的优点: * 双引号里可以有变量 * 双引号里可以出现转义字符 ------------ ### 拼接字符串 ##### 使用双引号拼接 ```bash your_name="xiaofeng" greeting="hello, "$your_name" !" greeting_1="hello, ${your_name} !" echo $greeting $greeting_1 ``` 输出结果: hello, xiaofeng ! hello, xiaofeng ! ##### 使用单引号拼接 ```bash your_name="xiaofeng" greeting_2='hello, '$your_name' !' #使用单引号拼接字符串 greeting_3='hello, ${your_name} !' #使用单引号包裹字符串 echo $greeting_2 $greeting_3 ``` 输出结果为: hello, xiaofeng ! hello, ${your_name} ! ------------ ### 获取字符串长度 实例 ```bash string="abcd" echo ${#string} # 输出 4 ``` ------------ ### 注释语法 ##### Shell 注释 以 # 开头的行就是注释,会被解释器忽略。 通过每一行加一个 **#** 号设置多行注释,像这样: 实例 ```bash #-------------------------------------------- # 这是一个注释 # author:xiaofeng # slogan:技术成就梦想 #-------------------------------------------- ##### 用户配置区 开始 ##### # # # 这里可以添加脚本描述信息 # # ##### 用户配置区 结束 ##### ``` ##### 多行注释 多行注释还可以使用以下格式: ```bash :<<EOF 注释内容... 注释内容... 注释内容... EOF ``` EOF 也可以使用其他符号: 实例 ```bash :<<' 注释内容... 注释内容... 注释内容... ' ``` 上面是使用一个单引号包裹起来的多行注释 ```bash :<<! 注释内容... 注释内容... 注释内容... ! ``` 上面是使用一人感吧号包裹起来的多行注释 ------------ **小结**: 本节课,我们主要介绍了shell中的变量、字符串、注释等内容。
上一篇:
shell编程-shell介绍
下一篇:
shell编程-shell脚本的参数
该分类下的相关小册推荐:
Go开发权威指南(上)
深入浅出Go语言核心编程(三)
Golang并发编程实战
Go Web编程(上)
Go语言入门实战经典
从零写一个基于go语言的Web框架
Go进阶之分布式爬虫实战
深入浅出Go语言核心编程(七)
go编程权威指南(四)
深入解析go语言
企业级Go应用开发从零开始
Go-Web编程实战