防止通配符在ksh脚本中解析

时间:2012-02-23 19:37:31

标签: shell unix ksh

我正在阅读文件名列表:

*.txt *.xml

是空格分隔的。我在我的ksh脚本中将其读入变量中,并希望能够在将每个变量放入find命令之前对其进行操作。问题是,只要我对变量做任何事情(例如,将其分解为数组),*就会解析为我脚本目录中的文件名。我想要的是* .txt保持不变,所以我可以把它放到我的find命令中。

我该怎么做?不幸的是,我在工作,不能只使用perl或其他语言。

2 个答案:

答案 0 :(得分:1)

set -f

关闭ksh中的globbing,所以*和?字符不会展开(全局)。

答案 1 :(得分:0)

有什么问题
 '*.txt' '*.xml' 

? 。否则,您必须向我们展示更多您的问题。也许编辑你的帖子,包括一个小的测试用例,说明你的问题,加上所需的输出或中间值。