如何在shell中打印shell转义字符串?

时间:2015-07-29 04:26:11

标签: bash shell sh

我正在编写一个shell程序来输出另一个shell程序,以便稍后进行评估。是否有一些常见的shell程序来打印shell转义为字符串?

2 个答案:

答案 0 :(得分:2)

我不确定我理解你的问题。但printf%q选项可能正是您要找的。

  

%q以可以作为shell输入重用的格式输出相应的参数

printf %q 'C:\ProgramFiles is a Windows path;'

输出C:\\ProgramFiles\ is\ a\ Windows\ path\;

(在这个例子中,需要简单的引号 - Gordon Davisson的评论 - 但是如果从变量或命令的输出打印,这并不重要。)

答案 1 :(得分:0)

您可以使用单引号字符串,因为这是在没有任何替换的情况下进行评估的 例如,以下命令是等效的

cat abc\ hi.txt
cat 'abc hi.txt'