0

我正在编写一个 shell 脚本,它创建一个数据库并将值存储到 database.file 中的键中。

我有一个测试引起了我的注意,我想知道为什么会这样。

./shellscript put key -e

预期的行为将创建一个文件:

key <-> -e

由于某种原因,我的 shell 脚本甚至无法捕获“-e”,甚至在打印 $1 时,将 -e 作为第一个参数传递。

4

1 回答 1

0

让我猜猜。你在你的 shell 脚本中使用“echo”来打印命令行参数吗?如果是:更换每个

echo foobar

经过

printf '%s\n' foobar

现在问题消失了吗?(根据您的“回声”版本,它解释 -e和/或-n作为选项,而不是作为参数。)

于 2013-01-08T16:02:39.447 回答