【Shell】-- 入门笔记(1) : 变量、字符串、数组、参数及基本运算符
来源:互联网 发布:pyqt5 tabwidget数据 编辑:程序博客网 时间:2024/05/22 12:05
基本运行流程
- 新建 test.sh 文件
#!/bin/bash # 执行环境echo "Hello World !" # 输出语句
- 运行( 定位到文件目录 )
pinsily@zhu:~$ chmod +x ./test.sh # 使脚本具有执行权限pinsily@zhu:~$ ./test.sh # 执行脚本, ./ 表示当前目录
Shell 变量
- 定义变量
myname="pinsily" # 变量和等号直接不能有空格
- 使用变量
echo ${myname} # 尽量加上大括号,$ 一定需要
- 只读变量
#! /bin/bashmyname="pinsily"readonly myname
- 删除变量
#! /bin/bashmyname="pinsily"unset myname
Shell 字符串
- 单引号
myname='pinsily' # 单引号任何字符都原样输出,不考虑 # 转义字符
- 双引号
myname='pinsily'str = "myname is ${myname} \n" # 双引号可以出现变 # 量的使用转义字符
- 字符串长度
myname="pinsily"echo ${#myname} # 输出 7
- 提取字符串
myname="pinsily"echo ${myname:1:4} # 输出 insi,下标从 0 开始
- 查找子字符串
# 查找 l 的位置,不存在则返回 0myname="pinsily" # expr index 为表达式echo `expr index "${myname}" l` # 输出 6,下标从 1 开始 # 用反引号括起来
Shell 数组
- 定义数组
# 元素之间使用空格隔开myarray=(value0 value1 value2 value3)
- 读取元素
# 使用下标,正常数组使用value0 = ${myarray[0]}# 获取全部元素all_value = ${myarray[@]}# 或者all_value = ${myarray[*]}
- 获取数组长度
# 取得数组元素的个数length=${#myarray[@]}# 或者length=${#myarray[*]}# 取得数组单个元素的长度lengthn=${#myarray[n]}
Shell 传递参数
- 实例
#!/bin/bash# 使用 $n 来获取第 n 个参数,参数之间使用空格隔开echo "执行的文件名:$0"; # $0 表示执行的文件名echo "第一个参数为:$1";echo "第二个参数为:$2";echo "第三个参数为:$3";
- 参数处理
Shell 基本运算符
原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用
expr 注意事项
- 表达式和运算符之间要有空格,例如 2 + 2
- 完整的表达式要用反引号括起来,而不是单括号
算术运算符
- 关系运算符
- 布尔运算符
- 逻辑运算符
- 字符串运算符
- 文件测试运算符
0 0
- 【Shell】-- 入门笔记(1) : 变量、字符串、数组、参数及基本运算符
- SHELL : 数组变量及数组参数
- Shell入门(三)数组、基本运算符
- shell学习数组、基本运算符
- shell中的变量及运算符
- php学习笔记:可变变量、字符串运算符和数组运算符
- Linux Shell变量和运算符笔记
- Shell:环境、变量、字符串、数组
- Python变量及基本运算
- Python笔记——基本语法:标识符、数据类型、变量、运算符及表达式/编码风格
- Python笔记——基本语法:标识符、数据类型、变量、运算符及表达式/编码风格
- Shell 基本运算符
- Shell 基本运算符
- shell基本运算符
- Shell 基本运算符
- Shell--基本运算符
- Shell 基本运算符
- Shell 基本运算符
- 同一tomcat下实现多应用session共享 单点登录
- Linux C语言编程-Linux网络通信--Linux上使用套接字(socket)来处理信息---编写一个单进程非阻塞多客户的套接字客户端
- Mysql数据库锁-表级锁分析
- NOIP 2006 提高组 复赛 digital 2k 进制数
- numpy的linalg模块
- 【Shell】-- 入门笔记(1) : 变量、字符串、数组、参数及基本运算符
- 继承
- Ubuntu server 安装CUDA 8.0
- 数组中只出现一次的数字(Java实现)
- CentOS下图形界面服务开启关闭以及不同运行级别的转换
- ssh框架关于ERROR Dispatcher:38
- 连续函数微分和离散函数的差分初解
- Python-第三方库requests详解
- sql中exists和not exists用法