通过删除文件末尾的换行符来创建新文件

发布于 2024-11-09 19:07:30 字数 442 浏览 3 评论 0原文

我有一个平面文件,其中包含 H: 和 T: 之间的以下数据记录。

H:20050427 HEADER RECORD
0000000 00000 000000000 123456 00 654321 DATARECORD
0000000 00000 000000000 123456 00 654321 DATARECORD
0000000 00000 000000000 123456 00 654321 DATARECORD
0000000 00000 000000000 123456 00 654321 DATARECORD
T:20050427 TRAILER RECORD
[blank space]

[空白] 是在 T: 之后创建的没有记录的新行(回车键):

如何从文件中删除空格(如果存在)并使用 H: 之间存在的数据创建一个新文件和T:?

谢谢, 阿伦

I have a flat file which contains the following data records between H: and T:.

H:20050427 HEADER RECORD
0000000 00000 000000000 123456 00 654321 DATARECORD
0000000 00000 000000000 123456 00 654321 DATARECORD
0000000 00000 000000000 123456 00 654321 DATARECORD
0000000 00000 000000000 123456 00 654321 DATARECORD
T:20050427 TRAILER RECORD
[blank space]

[blank space] is a new line (carriage return key) created with no records after T:

How do I remove the blank space(s) (if present) from the file and create a new file with data which are present between H: and T:?

Thanks,
Arun

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

反话 2024-11-16 19:07:30

如果您想从文件中删除所有空白行,为什么不 grep 查找非空白行呢?

$ grep -e \\S <myfile> > <newfile>

\S 是“非空白”的简写 \ 必须进行转义,以便 shell 能够通过它,这就是为什么需要两个反斜杠。

If you want to remove all blank lines from your file, why don't you grep for lines that have non-whitespace?

$ grep -e \\S <myfile> > <newfile>

\S is shorthand for "non-whitespace" The \ has to be escaped so that the shell passes it through, which is why you need two backslashes.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文