shell基础
来源:互联网 发布:淘宝店铺商标制作 编辑:程序博客网 时间:2024/06/04 18:31
shell脚本
以 .sh 结尾的文件,在linux 、UNIX 上均可运行。
shell是一种解释性语言,也就是说如果中间报错,后面的代码还是会执行。
shell脚本-变量
变量名的命名规则:
首字符必须为字母,大小写均可。 可以使用下划线
中间不能有空格,不可使用标点符合,不能使用bash中的关键字
调用变量
调用变量需要在变量名前添加$ eg: $name
如果调用变量名的后面还有其他内容,需要将变量使用大括号括起。
eg: echo "hello ${name} this is jake"
设置变量为只读(不可更改): readonly address
删除变量:unset name (unset 命令不能删除只读变量)
shell脚本-字符串
字符串中的内容可以用单引号,双引号或者不用引号来标志。
单引号:单引号中的任何字符都会原样输出(也就是说转义,变量等都是无效的)。
双引号:单引号字串中不能出现单引号。可以有变量,可以有转义字符。
字符串的拼接:shell中的字符串拼接并没有连接符号 直接写在后面即可。
获取字符串的长度:${#name} 这种写法可以获取字符串的长度。
提取字符串:
eg:
address="中国-河北-衡水"
address1="china-hebei-hengshui"
echo ${#address} 20
echo ${#address1} 20
echo ${address1:0:5} china
echo ${address:0:6} 中国
从案例可以看出 在sheel脚本中,汉字占用了三个字节。
获取单个字符在文本中的位置(从1开始):
echo `expr index "$address1" ac` 1
输出a或者c在字符串中首次出现的位置,输出结果是1
以 .sh 结尾的文件,在linux 、UNIX 上均可运行。
shell是一种解释性语言,也就是说如果中间报错,后面的代码还是会执行。
shell脚本-变量
变量名的命名规则:
首字符必须为字母,大小写均可。 可以使用下划线
中间不能有空格,不可使用标点符合,不能使用bash中的关键字
调用变量
调用变量需要在变量名前添加$ eg: $name
如果调用变量名的后面还有其他内容,需要将变量使用大括号括起。
eg: echo "hello ${name} this is jake"
设置变量为只读(不可更改): readonly address
删除变量:unset name (unset 命令不能删除只读变量)
shell脚本-字符串
字符串中的内容可以用单引号,双引号或者不用引号来标志。
单引号:单引号中的任何字符都会原样输出(也就是说转义,变量等都是无效的)。
双引号:单引号字串中不能出现单引号。可以有变量,可以有转义字符。
字符串的拼接:shell中的字符串拼接并没有连接符号 直接写在后面即可。
获取字符串的长度:${#name} 这种写法可以获取字符串的长度。
提取字符串:
eg:
address="中国-河北-衡水"
address1="china-hebei-hengshui"
echo ${#address} 20
echo ${#address1} 20
echo ${address1:0:5} china
echo ${address:0:6} 中国
从案例可以看出 在sheel脚本中,汉字占用了三个字节。
获取单个字符在文本中的位置(从1开始):
echo `expr index "$address1" ac` 1
输出a或者c在字符串中首次出现的位置,输出结果是1
阅读全文
0 0
- Shell基础
- Shell 基础
- Shell 基础
- shell基础
- shell 基础
- shell基础
- shell基础
- Shell基础
- shell基础
- shell基础
- shell基础
- Shell基础:
- shell基础
- shell 基础
- shell基础
- shell基础
- shell基础
- shell基础
- Node.js EventEmitter类源码浅析
- 数据结构之——找到无序数组中排序后相邻元素差值的最大值
- QT中显示框去标题栏后重载鼠标移动函数
- ArrayList和LinkedList的区别
- mysql插入ios表情符号报错
- shell基础
- osgEarth矢量贴地案例 32. scene_clamping.earth
- 【金融财经】金融市场一周简报(2017-11-17)
- ScrollView与RecyclerView冲突及异常情况处理
- mybatis批量insert生成mysql自增id
- 北京农商银行的云端 DevOps 之道
- 数据库水平切分的实现原理解析——分库,分表,主从,集群,负载均衡器(转)
- centos7配置LAMP过程问题及解决
- 围观阿里总部:边喝茶边搞技术是一种怎样的体验?