bash shell
参考:https://www.yiibai.com/bash/bash-scripting.html
如何创建和运行Bash脚本?
- 要创建一个空的bash脚本,首先,使用
cd
命令进入保存脚本的目录。使用文本编辑器(如gedit
),并键入shell命令。 - 使用
touch
命令创建零字节大小的脚本。touch file_name
Shell
- 要在文本编辑器(例如gedit)中打开脚本,请输入:
gedit file_name.sh
Shell
在此,.sh
后缀是必须提供以执行的扩展名。 - 在新打开的文本窗口或文本编辑器中输入bash脚本的shell命令。
每个基于Bash的Linux脚本都以以下行开头:
#!/bin/bash
Shell
这里#!
称为shebang,该行的其余部分是解释器的路径,用于指定bash shell在操作系统中的位置。
Bash使用#
注释任何代码行。
Bash使用echo
命令来打印输出。
最后,以./
作为前缀来执行bash脚本。
- 它应该始终在脚本的第一行。
- 在
#!
和解释器的路径之间,#
之前不应有任何空格
保存,关闭。
修改执行权限:chmod +x *.sh
查看文件权限:ls -l
执行 ./bash.sh
当执行报错时,尝试root权限。
变量 用 = 赋值
例如: a= "1234"
引用赋值: $
注意:赋值 = 等号和后面的字符直接要紧挨,不能有空格。
执行结果:
2. Bash变量
如果没有适当的信息(语法,数据类型,类型,工作方式),我们将无法使用bash变量,因此,通过浏览此简短教程,以获取有关Bash变量的适当概述。
首先,了解语法:
Variable_name=value
Bash
定义Bash变量的规则集:
- 在读取或打印变量时,在变量名前加上美元(
$
)符号。 - 设置任何值的变量时,省略美元符号(
$
)。 - 变量名可以是字母数字,也可以用下划线(
_
)书写。 - 变量名称区分大小写:
x
和X
视为两个不同的变量。 - 变量名可以使用大写或小写字母或两者的混合形式编写。
- 变量可以放在Bash脚本中的任何地方或命令行中,因为在运行时,Bash会将其替换为其分配的值。
- 变量名称与值之间的等号(
=
)的两侧都不应有空格。以下是无效变量的一些示例,它们之间具有空格(由点...
表示),如下所示:var1=...variable1 var2...=variable2 var3...=...variable3
Bash
- 不需要使用任何单引号或双引号来定义具有单个字符值的变量,例如
var1=variable
。要将多个单词或字符串作为单个项输入到变量中,然后使用引号将内容包含在该变量中。- 单引号(
''
)有助于处理每个字符。 - 双引号(
""
)有助于进行替换。
- 单引号(
从Bash脚本读取用户输入
使用read
命令从Bash脚本中读取了单个变量和多个变量。
此示例将输入保持在静默模式,这样命令行上的用户输入都将对其他用户隐藏。
因此,通常使用命令行选项(-s
,-p
)来传递用户名并隐藏密码(静默模式),如下所示:
read -sp PROMPT <variable_name>
Bash
其中-s
指示用户将输入保持在静默模式,-p
指示用户在新的命令提示符下输入。
示例代码:
#!/bin/bash
read -p "username : " user_var
read -sp "password : " pass_var
echo
echo "username : " $user_var
echo "password : " $pass_var
Bash
将上面脚本代码保存到文件:read-sprompt.sh,然后执行,得到以下结果:
注意:在脚本的第5行,echo命令输出了空行,因为如果不留空,则它将在同一行上输出密码和用户名。
因此,通过添加echo命令空白行来编写脚本。
参考:https://www.yiibai.com/bash/bash-scripting.html