#!/bin/bash
echo "hello world!"
#定义变量时,变量名不加美元符号($,PHP语言中变量需要)如:
name="jack"
##注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,#变量名的命名须遵循如下规则:
#命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。
#不能使用标点符号。
#不能使用bash里的关键字(可用help命令查看保留关键字)。
#赋值方式
#1.显示赋值
name="jack"
#2.语句赋值
for file in `ls /etc`;do
echo $file
done
#或者
#for file in $(ls /etc)
##使用变量
#格式 ${variable_name} or $variable_name
#使用一个定义过的变量,只要在变量前加美元符号即可
echo $name
echo ${name}
#变量名外边的花括号是可选的,加不加都行,加花括号是为了
#帮解释器识别变量的边界,例如:
for skill in Ada Coffe Action JAVA;do
echo "I am good at ${skill}Script"
done
##只读变量
#格式 readonly variable_name
#例如修改前面定义的变量name为只读
readonly name
#这时我们重新给name赋值,则会报"This variable is read only"的错误
#name="mary"
##删除变量
#格式 unset variable_name
#变量被删除不能再次被使用,unset不能删除只读变量
#例如删除之前定义的变量name
#unset name
##变量类型
#1) 局部变量 局部变量在脚本或命令中定义,仅在当前shell实例中有效,其他shell启 #动的程序不能访问局部变量。
#2) 环境变量 所有的程序,包括shell启动的程序,都能访问环境变量,有些程序需要环 #境变量来保证其正常运行。必要的时候shell脚本也可以定义环境变量。
#3) shell变量 shell变量是由shell程序设置的特殊变量。shell变量中有一部分是环境# #变量,有一部分是局部变量,这些变量保证了shell的正常运行
#shell中的字符串
#1.单引号
##限制:
#单引号里的任何字符都会照原样输出,单引号字符串中的变量是无效的
#不能转义字符
#单引号字符串中不能有单引号(对单引号使用转义符也不行)
str1='string'
#2.双引号
str2="hello ,I know you are \"${str1}\"!\n"
#字符串操作
#拼接字符串
#无需"+",可以直接拼接。例如
name1="mary"
name2="Tom"
greeting1="hello,"$name1"!"
greeting2="hello,${name2}!"
echo $greeting1 $greeting2
#获取字符串长度
echo ${#name1} #输出4
#提取字符串
#提取greeting1的内容,从第2个字符开始,截取4个字符
echo ${greeting1:1:4} #输出ello
#查找字符串
#查找字符l或者o的位置(那个字母先出现输出那个,从1开始)
echo `expr index ${greeting1} lo`
#这里使用了expr 表达式后面再介绍
Shell编程之变量篇
最新推荐文章于 2023-05-25 19:25:45 发布