【发布时间】:2015-08-28 07:43:02
【问题描述】:
所以我一直在互联网上寻找答案,但我似乎找不到任何东西。我目前正在使用一个 bash 脚本,我想做的一件事是提示脚本的用户输入一个句子,说明他们使用该脚本的目的是什么,然后将其传递给 CVS。如果你不知道 CVS 是什么,它只是一个脚本控制功能,我使用的 cvs 提交接受一个字符串并将其附加到正在提交的文件中。
我尝试过的基本情况如下:
read -p "Please enter what you did here: "
echo
cvs commit -m '$READ' filename.txt
问题是当我输入一个包含多个单词的字符串时,read 将其解释为传递的多个参数,并将每个单词存储为一个单独的变量,这破坏了我的 cvs 函数。
所以基本上,我如何提示输入字符串并将该输入用作一个变量?
谢谢:)
【问题讨论】:
-
cvs commit -m "$READ" filename.txt应该可以工作。 -
read -p "Please enter what you did here: " -r READ然后如anubhava所说,用双引号括起来。 -
@Ryan Cauldwell:你在哪里填写
$READ?