我有一个shell脚本(main.sh),其中前几行通过用户输入读取一些数据。如何通过shell脚本输入提示输入
echo "Enter the model !!"
read model
echo "Enter the Weight !!"
read wgt
echo "enter the data file !!"
read datafile
echo "Enter the two column names !!"
read coll1 coll2
这些变量$ model,$ wgt,$ datafile,$ coll1,$ coll2正在其他程序中使用。当我通过./main.sh运行它并分别输入MODEL,WGT,DATA,COL1 COL2时,一切正常。但我想通过一个文件给这些输入。所以我创建了另一个脚本文件,其中包含
echo "COL1 COL2" | echo "DATA" | echo "WGT" | echo "MODEL" | ./main.sh
它只接受第一个输入即MODEL。有没有办法正确地做到这一点?
或' printf“%s \ n”MODEL WGT DATA'COL1 COL2'在一行代码上。 – 2015-04-01 14:35:35
@JonathanLeffler确实。我几乎写了'printf'X \ nX \ nX \ nX \ n'',但认为这是过度的,稍微难以阅读。但是该版本更易于阅读。 – 2015-04-01 14:37:32
这是行得通的。但是如果我想给一些数字(比如说我的WGT实际上是1.5),那我该怎么办? – 2015-04-01 15:20:30