Bash - 在zip之后丢失了新的行字符

时间:2017-02-17 09:09:29

标签: bash shell unix zip

我编写BASH脚本来从远程服务器转储日志。转储过程是可以的,因为在那之后我有一个包含必要信息的大DUMPLOG.log文件:

ACTION A
ACTION B
ACTION C
ACTION A

但在我打电话之后:zip "DUMPLOG" "DUMPLOG.log"解压后的文件如下:

ACTION A ACTION B ACTION C ACTION A

DUMPLOG.log操作后,是否有可能在文件zip中丢失换行符,但仍有良好的压缩效果?

感谢您的任何建议

修改

  

在我压缩DUMLOG.log文件(远程linux机器)之后,我通过电子邮件发送它,并在Windows机器上unizp,然后我有没有新行字符的日志文件。

1 个答案:

答案 0 :(得分:2)

您自己提到了这个问题,

  

在Windows机器上unizp,然后我有没有新行字符的日志文件

由于您的远程服务器是基于Linux的,因此文本文件末尾的选定行将是Linux本机文件(即LF),您需要将其转换为Carriage Return (CR)后跟{Line Feed (LF)需要在Windows机器上使用时,{1}},CRLF。使用专用的工具unix2dos

在压缩文件之前,对unix2dos个文件使用.log,这样可以解决您的问题。