Linux之shell 变量

本文详细介绍了如何在shell中执行.sh脚本的不同方式,包括使用sh或bash、设置文件执行权限,以及变量的定义和使用。重点讲解了变量命名规则和操作技巧,如自定义变量、全局变量和特殊变量的用法。

shell执行方式

执行1:sh xx.sh
执行2:bash xx.sh
执行3:需要先给文件赋予执行权限。再使用文件路径路径执行

aa.sh脚本内容:
[damo@future shelldemo]$ cat aa.sh
#!/bin/bash
echo "========================"

执行方式1:
[damo@future shelldemo]$ ll
-rw-r--r--. 1 damo shaolin   45 11月  8 20:21 aa.sh
[damo@future shelldemo]$ sh aa.sh
========================

执行方式2:
[damo@future shelldemo]$ ll
-rw-r--r--. 1 damo shaolin   45 11月  8 20:21 aa.sh
[damo@future shelldemo]$ bash aa.sh
========================

执行方式3:修改问问的执行权限,在直接路径访问
[damo@future shelldemo]$ ll
-rw-r--r--. 1 damo shaolin   45 11月  8 20:21 aa.sh
[damo@future shelldemo]$ chmod u+x aa.sh
[damo@future shelldemo]$ ll
总用量 44
-rwxr--r--. 1 damo shaolin   45 11月  8 20:21 aa.sh
[damo@future shelldemo]$ ./aa.sh
========================

变量命名规则:

1.变量名可以字母,数字,下划线组成,不能以数字开头,环境变量名建议大写
2.等号两边不能有空格

自定义变量

定义变量: 变量=值
撤销变量:unset 变量
声明静态变量(只读)readonly 变量,注意不能unset

[damo@future shelldemo]$ a=hello
[damo@future shelldemo]$ echo $a
hello
[damo@future shelldemo]$ unset a
[damo@future shelldemo]$ echo $a

[damo@future shelldemo]$ b="hello world"
[damo@future shelldemo]$ echo $b
hello world

[damo@future shelldemo]$ readonly c=good
[damo@future shelldemo]$ echo $c
good
[damo@future shelldemo]$ unset c
bash: unset: c: 无法反设定: 只读 variable

[damo@future shelldemo]$ a=$(cd $(dirname $0);pwd)
[damo@future shelldemo]$ echo $a
/home/damo/shelldemo
[damo@future shelldemo]$

全局变量

export hello=world
export JAVA_HOME=/opt/kk/jdk

特殊变量

$n:  ($0:表示文件名,$1: 表示脚本参数1  $2:脚本参数2   10以上的参数需要${10})
$#:  获取输入参数的个数,常用循坏
$*:  获取所有参数的值(一个保存入参的数组,参数是一次性输入,)
$@:  获取所有参数的值(一个保存入参的数组,每个参数是一个一个的输入)
$?:  每次命令执行后的返回状态,返回结果为0,则上一个命令执行成功,返回为非零,则上一个,命令执行是失败

[damo@future shelldemo]$ sh va.sh hh kk dd
va.sh
hh
kk

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值