编辑代码

#JSRUN引擎2.0,支持多达30种语言在线运行,全仿真在线交互输入输出。
# echo "Hello world  -  sh.jsrun.net"

# file2='asdasa'

# for file in `ls /etc`
# do
#     echo "$file"
# done


# echo $file2
# echo {$file2}

# 加花括号是为了识别边界
# echo '${file2}oop'   # 因为和字符串黏在一起了,不用花括号的话区分不出来

# 所以推荐所有变量都加上{} [好习惯]]


# myUrl='http://www.baidu.com'

# 将变量定为只读变量

# readonly myUrl


# 修改失败,会报错,只读变量不能修改
# myUrl='sss'

# echo "\naslkdjlaskd\nsadkjasl  \r \"aaa\"  ${file2}"

# echo '\\naslkdjlaskd\\nsadkjasl  \r \ aaa  ${file2}' 




n1="jsoni"
# n2="hello,"$n1""
# n3='hello,'$n1''


# echo "$n2""$n3"
# echo '$n1'


# 获取字符串长度

echo "${#n1}" # 5

echo "${n1:1:2}"  # ${变量:开始索引:截取长度} 

echo `expr index "${n1}" ni` # 查找ni在$n1字符串中所在索引,注意这里echo后是反引号,代表里面的是执行代码
# 4



# 定义数组(没有规定长度)

array_n1=('111' 'asdjsaoi' 1111 'sadwfpoak')

# array_n1[0]='222'


# @获取数组中所有元素
echo "${array_n1[@]}"  
echo "${array_n1[*]}"  
echo "${array_n1[0]}"
echo "${#array_n1[@]}"  # 4 因为获取到的是一个集合,所以长度是指集合长度
echo "${#array_n1[*]}"
echo "${#array_n1[0]}" # 3 获取第一个字符串的长度