0

我有一个不好的问题,希望你能给我一些想法!:)

我想做的事:

只需阅读脚本的用户参数。

问题是什么:

特殊字符

让我解释:

脚本名称:testscript

如果用户键入 testscript -f filename.txt 它会打印出名称。相当容易。

但是如果用户键入以下内容,它对 shell 不起作用: testscript -f file(somethings)name.txt 所以如果有特殊字符,它总是会抛出一个 sh: error....

工作:如果用户这样写,它就可以工作: testscript -f 'filename(something).txt'

和 ' '

但这很不方便,而且人们经常忘记他们必须编写它。

有谁知道我能做什么?

我想过获取参数然后在开头和结尾添加'和',我不确定shell错误是否是第一个..

否则,有人有想法吗!?

在允许用户输入和删除()之前,是否可以检查文件名中是否有()?

4

1 回答 1

1

不幸的是,您的程序在这里实际上无能为力 - 您的用户看到的错误来自 shell,甚至在您的程序有机会执行之前。

于 2012-11-28T19:53:46.420 回答