我有bash脚本如solaris的回声 “[” 字符问题
for i in `echo a [ matched.lines`
do
echo $i
done
为什么下面
该脚本的输出
[
匹配。行
我想输出的文本,因为它是
一个[matched.lines
我怎么能做到这一点
感谢您的帮助
我有bash脚本如solaris的回声 “[” 字符问题
for i in `echo a [ matched.lines`
do
echo $i
done
为什么下面
该脚本的输出
[
匹配。行
我想输出的文本,因为它是
一个[matched.lines
我怎么能做到这一点
感谢您的帮助
我已经取代'人物'与SED全局替换,并没有求助
对脚本感谢的输出没有新线使用shell来读取一个文件,使用而读循环
while read -r loop
do
case "$line" in
*]*) echo $line;;
esac
done <"file"
对不起,但这不会做你想做的。您的for
循环使用空格作为其参数的分隔符。这会导致项目中的每一个在单独的一行上回显。添加-n在这里不起作用,因为你不会在该行的结尾处获得\ n。老实说,我不明白你想在这里做什么。如果你只是想呼应这种“一[matched.lines”作为一个字符串,你可以这样做:
for i in "a [ matched.lines";do
echo $i
done
但我觉得你会误解如何使用for循环....
为什么使用外部循环而不是单个命令? 'echo a [matched.lines' – 2010-02-01 11:16:19
不,这里只是演示的目的,我有几行文件来读取,其中包括“[”所以代码有循环 – soField 2010-02-01 11:51:33
方括号在这里不是问题。更多地描述你真正想做的事情。提供更好,更完整的示例。 – 2010-02-02 01:52:10