自动将内容放入 bash 中读取

自动将内容放入 bash 中读取

嗨,我有一个小 bash 脚本,之前我习惯于输入内容,有点像回答问题,但我想做的只是运行 bash 脚本,而不是回答问题,它只会自动将答案放入。

    echo "
Please type in your name "

echo $name > /root/details/name.info
echo "
Your name is $name ! "

echo "
    What is your age "
    read age
    echo $age > /root/details/age.info

echo "
This server will carry out a complete maintenance routine daily
Enter the time at which this routine should happen :
Example : Eleven o'clock is 23 , midnight is 00 , three in the morning is 03 ...
Based on the example , enter the time of maintenance with a decimal number 00-23
Please note: ( 00/23 )"

echo $HorMan>

echo "
    Please enter  your username e.g. admin"
    read username
    echo $username > /root/details/username.info

在上面的代码中,名称和年龄在每个脚本运行时都不同,但服务器维护和用户名在每个脚本运行时都相同。

答案1

将问题的答案按正确的顺序放入文本文件中,每行一个答案。

然后运行你的脚本:

$ ./script.sh <answers.txt

编辑:更新问题后。

如果脚本的某些输入是静态的,则要么根本不在脚本中读取它们(用静态数据替换),要么使用第二个脚本来填充这些值:

$ ./answerscript.sh <answers.txt | ./script.sh

包含answers.txt交替行的姓名和年龄,而answerscript.sh执行以下操作:

#!/bin/sh

IFS=
while read name; do
  echo $name
  read age
  echo $age
  echo 23
  echo enoch
done

23并且enoch是静态的时间和用户名)。

顺便说一句,您现在编写的脚本不会读取名称或时间。

相关内容