Bash:如何使命令行调用脚本并传递两个字符串?

Bash:如何使命令行调用脚本并传递两个字符串?

我有一个简单的 bash 脚本,text.sh其名称如下所示:

#!/bin/bash
read username
read password
echo "script attempted with $username $password"

我想用这样的方式来调用它:

[[email protected] root]# ./test.sh bing s3cr3t

并让它回显:

script attempted with bing s3cr3t

我可以使用<<<进行bing打印,但不能同时使用两者。我确信这很简单,但我的 Google 功能失败了,因为我不知道要搜索什么关键字。

答案1

您想要的是访问命令行参数,而不是从标准输入读取。具有正确方法的脚本:

#!/bin/bash
username="$1"
password="$2"
echo "script attempted with $username $password"

特殊变量等$1$2包含第一、第二等。在运行的命令行上传递的参数。提供更多信息这里,以及许多其他地方。

相关内容