#!/bin/bash
开头#!/bin/bash
echo "PATH=$PATH"
A=`ls -la`
反引号,运行该命令,并把结果返回给变量AA=$(ls -la)
等价于反引号#!/bin/bash
A=100 #定义变量
echo "A=$A"
unset A #撤销变量
echo "A=$A"
readonly A=99 #定义和使用静态变量
echo "A=$A"
unset A #静态变量不能unset
echo "A=$A"
RESULT=`ls -l/home` #使用反引号
echo $RESULT
echo " "
MY_DATE=$(date) #使用$()来执行
echo "date=$MY_DATE"
小案例:可以把变量提升到全局环境变量,可供其他 shell 程序使用(之后再写)
#!/bin/bash
TOMCAT——HOME=/opt/tomcat #定义一个自己的环境变量
export TOMCAT——HOME #输出环境变量
注:可以让上述的环境变量在其他bash 文件中使用
#!/bin/bash
#在另一个shell文件中使用环境变量
#使用我们自定的环境变量
echo "tomcathome=$TOMCAT——HOME"
:<<!
!
??当我们执行一个 shell 脚本时,如果希望获取到命令行的参数信息,就可以使用到位置参数变量,比如: /myshell.sh 100 200,这就是一个执行 shell 的命令行,可以在myshell 脚本中获取到参数信息
$n
:n 为数字,$0
代表命令本身,$1
-$9
代表第一到第九个参数,十以上的参数需要用大括号如:${10}
$*
:代表命令行中所有参数,$*
把所有参数看成一个整体$@
:代表命令行中所有参数,不过$@
把每个参数区分对待$#
:代表命令行中所有参数的个数#!/bin/bash
#获取到各个参数
echo "$0 $1 $2"
echo "$*"
echo "$@"
echo "参数个数=$#"
??shell 设计者已经定义好的变量,可以直接在shell脚本中使用
$$
:当前进程的进程号(PID)$!
:后台运行的最后一个进程号$?
:最后一次执行的命令的返回状态。若谷这个变量的值为0,证明上一个命令正确执行;如果这个变量的值为非0(具体是那个数,由命令自己来决定),则证明上一个命令执行不正确了#该bash文件名为prevar.sh
#!/bin/bash
echo "当前的进程号=$$"
./myshell.sh & #后台方式运行 myshell.sh
echo "最后进程的号=$!"
#!/bin/bash
RESULT1=$(((2+3)*4)) #$((运算式))
echo "result1=$RESULT1"
RESULT2=$[(2+3)*4] #$[运算式] 比较简单
echo "result2=$RESULT2"
TEMP=`expr 2 + 3` #使用expr
RESULT3=`expr $TEMP \* 4`
echo "result3=$RESULT3"
#两个参数(整数)的和
SUM=$[$1+$2]
echo "SUM=$SUM4"
原文:https://www.cnblogs.com/BY1314/p/12879798.html