Shell基础

在操作Linux系统时,我们输入的所有命令,都是先通过Shell层,再到达内核的。

脚本格式要求

1.脚本以 #!/bin/bash开头

2.脚本需要有可执行权限

脚本常用的执行方式

Shell脚本 HelloWorld!

#!/bin/bash
echo "hello,world"

方式1(输入脚本的绝对路径或相对路径)

说明:首先要赋予helloworld.sh 脚本的+x权限,再执行脚本

方式2(sh+脚本)

说明:不用赋予脚本 +x权限,直接执行即可。

Shell的变量

Shell变量介绍

1.Linux Shell 中的变量分为,系统变量和用户自定义变量。

2.系统变量:$HOME $PWD  $SHELL $USER

3.显示当前shell中的所有变量        set

shell变量的定义

基本语法

1.定义变量 :  变量名  =  值

2.撤销变量:  unset变量

3.声明静态变量   readonly变量  注意,静态变量是不能unset的

  1 #!/bin/bash
  2 #定义变量A
  3 #撤销变量A
  4 #声明静态的变量B = 2 ,不能unset
  5 A=100
  6 #输出变量要加上dollar
  7 echo A=$A
  8 echo "A=$A"
  9
 10 unset A
 11 echo A=$A
 12
 13 readonly b=2
 14 echo b=$b
 15 unset b

输出

A=100
A=100
A=
b=2
pra01.sh: 第 15 行:unset: b: 无法反设定: 只读 variable

 定义变量的规则

1.变量名称可以铕字母、数字和下划线组成,但是不能以数字开头。5A=200(X)

2.等号两侧不能有空格

3.变量名称一般习惯为大写(习惯性的规范)

将命令的返回值赋给变量

1.A=`date` 反引号,运行里面的命令,并把结果返回给变量A

2.A=$(date) 等价于反引号

设置环境变量

1.export 变量名=变量值

2.source 配置文件 (令配置文件生效)

3.echo $变量名

位置参数变量

$n        $@        $#        $*

#!/bin/bash
echo "0=$0 1=$1  2=$2"
echo "所有的参数$*"
echo "$@"
echo "参数的个数=$#"
                 

[root@Hadoop-3 shcode]# ./myshell.sh 1000 2000
0=./myshell.sh 1=1000  2=2000
所有的参数1000 2000
1000 2000
参数的个数=2

运算符

1.$((运算式)) 或  $[运算式]  或者  expr m+n

2.注意expr运算符间要有空格

3.expr m-n

4.expr  \* 乘法 / 除   % 取余

if-else语句,在下文中。

注意空格!!!!!!!!!!!!!!!!!!!!!!!!!

#!/bin/bash
read -p "please input your name" NAME ;
if [ $NAME = root ]
then
echo "Hello ${NAME} ,welcome";
elif [ $NAME = zc ]
then
echo "hello ${NAME} ,welcome";
else
echo "U cant enter";
fi

  for语句有两种使用方式

for N in 1 2 3
do
        echo $N
done

for ((i = 0; i <= 5 ; i++))
do
        echo "welcome $i times";
done

 函数:

#!/bin/bash
funWithReturn(){
echo "add"
echo "first num"
read anum
echo "second num"
read bnum
echo "两个数字分别是 $anum 和 $bnum"
return $((anum+bnum))
}

funWithReturn
echo "和为 $?";

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值