我想使用包含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
提前致谢: - )
答案 0 :(得分:1)
显示了三个例子。第一部作品(可能省略了一些细节)。其他两个(文字"^I"
和文字"\033I"
)不会生成标签,因为cat
不会执行。 为其他方式提供了一个选项(-v
),使非打印字符可显示。
如另一个答案所述,echo
命令可以解释一些反斜杠序列。例如
echo "\tExample with tab" >file.txt
在Linux上使用的echo
变种与独立程序(来自coreutils)与shell的一部分(可能是bash
或dash
或{之间存在一些差异{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