首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何获得格式化文本,如直接传递字符串?

如何获得格式化文本,如直接传递字符串?
EN

Ask Ubuntu用户
提问于 2022-02-10 02:57:13
回答 1查看 201关注 0票数 0

使用$直接将字符串传递给echo

代码语言:javascript
运行
复制
$ echo 扩展嵌入的ANSI转义序列#include 
int main() {
  std::cout << "Hello World!" << std::endl;
}我将字符串分配给一个变量。codeStr='#include \nint main() {\n  std::cout << \"Hello World!\" << std::endl;\n}'然后回显变量echo $codeStr我得到的是原始字符串,而不是格式化文本。如何获得格式化文本,如直接传递字符串?#include \nint main() {\n  std::cout << \"Hello World!\" << std::endl;\n}'

扩展嵌入的ANSI转义序列

A3

我将字符串分配给一个变量。

A4

然后回显变量

A5

我得到的是原始字符串,而不是格式化文本。

如何获得格式化文本,如直接传递字符串?

EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 2022-02-10 04:14:58

使用-e切换到enable interpretation of backslash escapes

代码语言:javascript
运行
复制
$ codeStr='#include \nint main() {\n  std::cout << \"Hello World!\" << std::endl;\n}'
$ echo -e $codeStr 
#include 
int main() {
 std::cout << \"Hello World!\" << std::endl;
}

在@steeldriver注释中寻址,printf也能工作(并且它正确地解释了序列)。

代码语言:javascript
运行
复制
$ codeStr='#include \nint main() {\n  std::cout << \"Hello World!\" << std::endl;\n}'
$ printf "$codeStr"
#include 
int main() {
  std::cout << "Hello World!" << std::endl;
}
票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1392080

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档