#!/bin/bash
echo "-----------1.指明解释器,chmod------------"
echo "hello world!"
echo "-----------2.定义变量------------"
MY_NAME="zhigou" #变量用大写,引用使用${}是好习惯
echo ${MY_NAME}
readonly MY_NAME_ONLY="zhigou" #readonly修饰为只读变量
#MY_NAME_ONLY="zhigou2"
unset MY_NAMEONLY #unset删除变量--无法删除只读变量
echo "-----------3.字符串------------"
MY_NAME="zhigou"
STR='this is ${zhigou}\n' #单引号--原样输出,变量 转义无效
echo $STR
STR="this is ${MY_NAME}\n" #双引号--可以变量 转义字符
echo $STR
STR="hello, "${MY_NAME}" !" #字符串可拼接
echo ${STR}
echo ${#STR} #获取字符串长度
#echo ${STR:1:4} #提取子串(1-4字符)
echo `expr index "${STR}" el` #查找e,或l的位置
echo "-----------4.传递参数------------"
echo "执行的文件名: $0";
echo "参数个数为: $#";
echo "第一个参数: $1";
echo "第二个参数: $2";
echo "第三个参数: $3";
echo "所有参数作为一个字符串显示: $*";
echo "----\$* 演示----"
for i in "$*"; do
echo $i
done
echo "----\$@ 演示----"
for i in "$@"; do
echo $i
done
echo "-----------5.数组------------"
array=(1 2 3 4 5) #初始化数组
array2[3]=123 #指定数组元素值
array2[4]=234
echo "array的元素为${array[*]}" #@全部打印
echo "array2的元素为${array2[@]}" #@全部打印
echo "ayyay[3] = ${array[3]}" #${a[n]}打印指定元素
echo "array2的元素个数为${#array2[*]}" #${#A[*]}--数组元素个数
echo "-----------6.运算符------------"
VAL=`expr 2 + 2`
VAL2=4
echo "2 + 2 = ${VAL} ---运算符两边要有空格"
if [ $VAL == $VAL2 ]
then
echo "VAL == VAL2"
fi
echo "条件表达式要放在[]中,且要有空格:[ ${VAL} == ${VAL2} ]"
13. Learning_Shell脚本.sh
最新推荐文章于 2022-12-14 19:39:52 发布