shell(1)脚本创建执行与变量使用
声明!
学习视频来自B站up主 泷羽sec 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章
笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!
有兴趣的小伙伴可以点击下面连接进入b站主页**B站泷羽sec**
Shell 脚本基础
Shell 脚本是一系列命令的集合,这些命令可以一次性执行,从而简化日常任务。
1. 创建 Shell 脚本
-
打开终端。
-
使用文本编辑器创建一个新的脚本文件,例如使用
nano
:nano myscript.sh
-
在编辑器中输入以下内容:
#!/bin/bash echo "Hello, World!" # 除了`#!/bin/sh`和`#!/bin/dash`,总共三种解释器
第一行
#!/bin/bash
是一个称为 shebang (也称为 hashbang 或 pound-bang,是一个由井号(#
)和感叹号(!
)组成的特殊构造,通常出现在 Unix 和类 Unix 系统中的脚本文件的第一行。)的特殊构造,它告诉系统这个脚本应该用哪个解释器执行。 -
保存并退出编辑器(对于
nano
,按Ctrl + X
,然后按Y
确认保存,最后按Enter
)。 -
给脚本文件添加执行权限:
chmod +x myscript.sh # 创建的文件没有执行权限,不添加权限无法使用./运行
-
运行脚本:
./myscript.sh # 如果不赋予执行权限,也可以通过脚本解释语言sh myscript.sh、bash myscript.sh、dash myscript.sh来运行,脚本解释语言会暂时赋予权限。
2. 变量
在 Shell 脚本中,变量用于存储信息,以便在脚本中重复使用。
-
声明变量:
- 变量名称通常以字母或下划线开头,后面可以跟字母、数字或下划线,不能以数字开头。
- 等号
=
两边不能有空格。
myVar="Hello, World!"
-
使用变量:
- 使用
$
符号来引用变量的值。
echo $myVar
- 使用
-
特殊变量:
-
$0
:脚本的名称。 -
$1
、$2
、$3
等:传递给脚本的参数。 -
$?
:上一个命令的退出状态。 -
$$
:当前脚本的进程 ID。
-
3. 字符串操作
-
连接字符串:
echo "User $USER logged in from $HOSTNAME"
-
子字符串:
name="John Doe" echo ${name:0:4} # 输出 "John"
-
长度:
echo ${#name} # 输出字符串长度
4. 数组
-
声明数组:
myArray=("Apple" "Banana" "Cherry")
-
访问数组元素:
echo ${myArray[0]} # 输出 "Apple"
-
遍历数组:
for i in "${myArray[@]}"; doecho $i done
实践示例
创建一个脚本,询问用户的名字,并根据用户的名字生成问候语。
#!/bin/bash# 获取用户输入
read -p "Enter your name: " name# 使用变量
echo "Hello, $name! Welcome to the world of网络安全."
保存这个脚本为 greeting.sh
,按照之前的步骤给予执行权限并运行。