gpt4 book ai didi

linux - While Read 存储每个没有空格的用户条目

转载 作者:太空宇宙 更新时间:2023-11-04 08:59:52 24 4
gpt4 key购买 nike

我想要求用户输入几行文本,它可以是任何内容,我想将它存储为一个变量,以便稍后调用。我不想创建多个读取命令,只是一个可以在需要时容纳多个段落的命令。

我试过这个:

echo "Enter your your paragraph:"
read -d '' -n 1 message

while read -d '' -n 1 -t 2 c
do
message+=$c
done
echo ""
echo "$message"

输出总是放在一行文本中,没有空格或任何东西。当我运行代码并输入几行代码时,它看起来像这样:

Enter your broadcast message (When done, wait 2 seconds): 
This is supposed to be a sentence.
And so is this.

Thisissupposedtobeasentence.Andsoisthis.

它应该在单独的行中输出两个句子并包含空格。

最佳答案

不要为此使用read;要求所有输入都没有任何两秒钟的停顿(相反,强制等待两秒钟才能完成输入)对用户来说不是很友好。相反,直接从标准输入中读取输入,对于交互式使用,只需要一个 EOF (Control-d) 来完成输入。

c=$(</dev/stdin)

关于linux - While Read 存储每个没有空格的用户条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23479724/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com