2009-06-05 66 views
4

我有一个生成文本文件的tcsh脚本。一个文本文件中的行是:tcsh中的回显嵌套引号

bla bla bla 'foo foo foo "bar bar bar"': etc etc; 

注意嵌套'",也是:;必须在那里。

:;要求将整个字符串用引号括起来。但是,如果我这样做,我无法逃避引号。

的命令是:

echo "bla bla bla 'foo foo foo "bar bar bar"': etc etc;" >> outfile 

我怎样才能逃避周围bar bar bar引号,以便他们得到正确打印?

回答

8
echo "bla bla bla 'foo foo foo "\""bar bar bar"\""': etc etc;" 

或本:

echo "bla bla bla 'foo foo foo "\"bar bar bar\""': etc etc;" 

这些应该为你工作给了简单的例子,但可能不会帮助你实际上试图做...引用的tcsh中总是让我生气,尤其是在尝试定义带有反标记,引号和双位组合的别名时。

被警告,第二表单适用于回声,但它实际上创造了命令行上三个不同的参数,这些参数(解释转义序列后):

  • 唧唧歪歪“富富富“ bar
  • bar
  • bar“':​​等等;

第一种形式是你应该使用的形式。