shell脚本语言——入门与变量

第一个shell脚本语言

1、脚本格式

(以#!/bin/bash)——指定解析器

2、第一个shell脚本(helloworld.sh)

a.创建一个shell脚本,输出helloworld;

touch helloworld.sh
vim helloworld.sh
#在helloworld.sh中输入以下内容
#!/bin/bash
ech "helloworld"

b.脚本的执行方式:

b1.采用bash或sh+脚本的相对路径或绝对路径:

sh ./helloworld.sh
sh /root/shells/helloworld.sh
bash ./helloworld.sh
bash /root/shells/helloworld.sh

b2.采用输入脚本的绝对路径或相对路径执行脚本(必须具有可执行权限+x):

赋予helloworld.sh脚本的+x权限

chmod +x helloworld.sh

执行脚本

./helloworld.sh
/root/shells/helloworld.sh
source helloworld.sh
. helloworld.sh

3、开子shell与不开子shell的区别

环境变量的继承关系,子shell中设置的当前变量在父shell中是不可见的。

变量

1、系统预定义变量(一般大写字母)

常用的系统变量——$HOME ,$PWD ,$SHELL ,$USER等

#查看系统变量的值
echo $HOME 
#显示当前shell中所有变量
set
#在控制窗口显示系统变量
env | less
printenv | less
#显示具体的系统变量
printenv USER
#开启一个子shell,并查看shell进程
bash
ps -f

2、自定义变量(一般小写字母)

定义变量(不能加空格)——定义变量通常为局部变量,需要通过export命令转变为全局变量。

区别:局部变量不能在子shell中执行展示,全局变量可以。

a=2
echo $a
#将局部变量导出为全局变量
export a

运算操作需要加运算符

result=$((1+5))
#或者 result=$[1+5]
echo $result

只读变量(静态变量)

readonly b=5
#b=10就无法执行
echo $b

撤销变量(只读变量不能撤销变量)

unset result

3、参数变量

$n——位置参数:

   $0——.sh文件的脚本名称

   $1-$9——表示一到九九个参数变量($1:第一个参数;$2:第二个参数.......$9:第九个参数)

$#——获取输入参数个数

$*  ,$@——代表命令行中所有的参数

$*:把所有参数看成一个整体

$@:把每个参数区分对待

$?——最后一次执行命令的返回状态,0就是正常执行,非0就是没有正常执行

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一瞬にして失う

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值