我试图在printf中回显一个变量。我首先使用以下命令提示用户输入

printf 'Specify lrus [default 128]:         ' ;read -r lrus

接下来,它再次提示用户查看他是否要使用上一个问题中的输入:
printf 'Are you sure you want $lrus lrus:       ' ;read -r ans

例如,输出将如下所示:
Specify lrus [default 128]:     60
Are you sure you want 60 lrus:  yes

上面的输出是我试图实现的结果,它允许使用printf将先前的输入变量传递给下一个问题。

最佳答案

您的问题是您使用的是单引号。参数不会在单引号内扩展。

但是,参数会用双引号引起来:

printf "Are you sure you want $lrus lrus: "

请注意,不需要单独打印。最好在-p中使用read参数(一方面,它可以理解您的终端宽度):

read -p "Specify lrus [default 128]: " -r lrus
read -p "Are you sure you want $lrus lrus? " -r ans

关于linux - 如何在printf中传递变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40525869/

10-09 08:43