变量介绍
Shell 脚本的变量是什么?
变量是计算机语言中能储存计算结果或能表示值的抽象概念。保存将来会变化的数据,即使数据变化,直接调用变量即可。
Shell 变量用来存放系统和用户需要使用的特定参数(值),而且这些参数可以根据用户的设定或
系统环境的变化而相应变化。通过使用变量,Shell 程序能够提供更加灵活的功能,适应性更强。
脚本的创建执行
新建一个 2.sh vim 2.sh ,编辑模式输入 echo | dashazi 默认是没有权限的 但是我们可以利用 sh 2.sh bash 2.sh 执行成功
利用 source 2.sh 执行,这和 sh 命令查不多。只不过这个命令就是对颜色加深标注了。比如我们重编辑一下这个文件,直接把 Is 命令放到 2.sh 里去 sh 2.sh 可以看到颜色加深了
sh 与./1.sh 区别
1.sh
当你输入 1.sh 命令时,系统会在当前环境的 PATH 中查找名为 1.sh 的可执行文件。 如果 1.sh 不在 PATH 中或者没有设置为可执行,将出现 “command not found” 或类似的错误。
./1.sh
使用 ./1.sh 命令时,你明确地告诉系统在当前工作目录中查找脚本 1.sh。 这种写法通常用于运行不在系统 PATH 中的脚本。 为了成功执行此命令,1.sh 文件需要具有可执行权限(即通过 chmod 命令设置权限)
给脚本设置执行权限
chmod +x a2.sh
依次执行
mousepad a2.sh (或vi a2.sh)
./a2.sh
chmod +x a2.sh
./a2.sh
变量的使用
变量的声明和定义
eg:定义一个 name 变量,
name="dasahzi"
用 echo $name 打印出来,这就是简单的变量声明
打印出来的age=27
age=27 echo $age
我们来写复杂点,比如说echo my name is$name,and my age is $age years old
单双&引号的区别
- 区别就是不加或者双引号可以输出变量,但是加入单引号他会把变量当字符串输出出来
- 一般不加双引号和加上效果一样
echo "my name is $name, and my age is $age years old"
echo 'my name is $name,and my age is $age years old'
你会发现他并没有把变量赋值打印出来,而是直接把变量写进来了
变量拼接
echo "my name is $name, and my age is $ageyears old"
years 与 age 之间没有空格所以打印出来为空,因为变量没有事先定义 所以为空 解决办法将变量用双引号括起来它就会做一个区分 那么除了""还能用什么呢 用{}花括号也是可以的 这样输出的变量会将输出内容利用花括号框起来
变量的使用
set 查看定义过的变量
set | grep name
删除指定变量 unset name
并查看变量是否存在 set | grep name
声明! 学习视频来自B站up主 泷羽sec 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!有兴趣的小伙伴可以点击下面链接进入b站主页B站泷羽sec