如何用cat创建包含TAB的文件?

时间:2015-06-26 08:30:26

标签: linux cat

我想使用包含TAB字符的cat在我的bash脚本中创建一个文件。但是我无法让它运转起来。在这里我的测试:

使用普通标签:

<appSettings>
    <add key="Setting1" value="myName" />
    <add key="Setting2" value="myDob" />
 </appSettings>

结果:

cat >file.txt <<END
    Text after plain tab.
END

使用^ I:

Text after plain tab.

结果:

cat >file.txt <<END
^IText after escaped I.
END

使用\ 033I:

^IText after escaped I.

结果:

cat >file.txt <<END
\033IText after another escaped I.
END

提前致谢: - )

2 个答案:

答案 0 :(得分:1)

显示了三个例子。第一部作品(可能省略了一些细节)。其他两个(文字"^I"和文字"\033I")不会生成标签,因为cat不会执行 为其他方式提供了一个选项(-v),使非打印字符可显示。

如另一个答案所述,echo命令可以解释一些反斜杠序列。例如

echo "\tExample with tab" >file.txt

在Linux上使用的echo变种与独立程序(来自coreutils)与shell的一部分(可能是bashdash或{之间存在一些差异{1}})。 POSIX standard是一个很好的起点。

答案 1 :(得分:0)

您可以轻松使用Echo和制表符\ t,如下所示:

[purnendu.maity@unix ~]$ echo  "Example with tab: \t text after tab" > file.txt
[purnendu.maity@unix ~]$ cat file.txt
Example with tab:        text after tab