泷羽sec学习--Shell编程之基础操作与变量使用

声明!
学习视频来自B站up主 泷羽sec有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!有兴趣的小伙伴可以点击下面连接进入b站主页B站泷羽sec

一、基本概念以及使用

Shell脚本:由一系列 Shell 命令、函数、变量定义和控制流语句组合而成,用于自动化执行系统管理任务、文件处理、文本处理以及各种命令行工具的组合操作等。

  • 创建shell程序文件
touch shell.sh
vim shell.sh

这里的后缀.sh是可选项,可以不写。

  • 脚本的运行分为三种。
#! /bin/dash
#! /bin/sh
#! /bin/bash

这三种方式最后都是调用dash这个解释器。

  • 执行脚本

    1. 直接执行

      1. 添加可执行权限:chmod u+x test.sh

        脚本创建出来之后是一个普通文件 --> 没有执行权限

      2. 运行脚本:./test.sh

  1. 解释器执行
    1. sh/dash/bash test.sh(三个解释器,任选其一即可)
    2. 示例:sh test.sh;dash test.sh;bash test.sh
  2. 利用source命令执行
    1. 示例:source test.sh
    2. 区别:会对部分命令,颜色加深标注。

二、基本变量

变量声明

例如,定义一个name变量,name=“无情哈拉少”

name="无情哈拉少"
echo $name

或者这样:age=18

age=18
echo $age

复杂一点的使用:

echo my name is $name,and my age is $age years old

一般来说加双引号和不加双引号的效果是一样的,如果是单引号会直接输出。

变量拼接
echo my name is $name,and my age is $ageyears old

这里输出可以发现并没有输出年龄,因为$ageyears没有这个变量,如果不想要空格,可以使用拼接方法。如

echo my name is $name,and my age is ”$age“years old
echo my name is $name,and my age is {$age}years old

变量的命名

  • shell脚本变量的命名类似于编程语言,不能以数字开头,且不能有空格,但是运行下划线。
  • shell脚本里的(=)左右不能有空格(如果有空格,Shell 会将其解释为命令和参数)。

二、数字运算

在shell编程中,expr用来输出计算的结果
加减法的运算输出方式:

方式一:

expr 10 + 5      #每个中间必须要有空格
expr 10 - 5

乘除法等运算方式:

expr 10 \* 5	#乘法这里需要转义
expr 10 / 5		#这里是触发运算
expr 10 % 5		#这里是取余

混合运算:

expr 10 + 5 \*4		#输出:30
#这里的运算顺序也是先乘除后加减

expr \( 5+10 \) \* 4	#输出:60
#这里不能直接使用括号,也是需要转义才能使用

运算与变量结合:

# 使用 expr 命令计算并赋值
name $(expr 5 + 6)
echo $name		# 输出:11
    
# 使用算术扩展赋值
name=$((5 + 6))
echo $name  # 输出: 11
  • 要执行计算并赋值结果,应去掉单引号,使用命令替换 $( ... ) 或算术扩展 $(( ... ))

方式二:
在bash​等shell​中,可以使用$(( ))​来进行算术扩展。

  1. 基本运算
echo $(( 1+2 ))   #加法
echo $(( 2-1 ))   #减法
echo $(( 1*2 ))   #乘法
echo $(( 2/1 ))   #除法
echo $(( 2%1 ))   #取余
  1. 变量赋值
num=$((5 + 10))
echo $num

三、其他常用操作

查看变量和删除变量

查看所有变量:

set

查看指定变量:

set | grep name

删除变量:

unset name

永久变量的设置

永久变量

刚才export只是设置了临时变量,那我们将它写入到配置文件当中作才能永久生效。

/usr/bin/vi .bashrc
export PATH=/root:PATH

使变量生效:

source usr/bin/ .bashrc

或者重启也可以。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值