【问题标题】:Converting file from Unix to Windows / DOS将文件从 Unix 转换为 Windows / DOS
【发布时间】:2021-09-06 10:27:42
【问题描述】:

我有几个从 UNIX 生成的文件,其值类似于

1 TEST1
2 TEST2
3 TEST3
4 TEST4
5 TEST5
6 TEST6

我尝试将文件复制到共享文件夹,尝试将其下载到我的本地电脑(Windows 10)并打开它并正常工作。 但是之后,我在我的应用服务器(Windows Server 2012R2)上打开文件,文件值变成了

1TEST12TEST23TEST34TEST45TEST56TEST6

我已经试过了

  • sed -i 's/\r$//g'
  • sed 's/$'"/echo \\\r/" filename.txt > filename.txt
  • perl
  • awk 但它们都不起作用

【问题讨论】:

  • 您可以查看实用程序unix2dos,它的作用与dos2unix完全相反
  • @smoldev : 当然unix2dos 会,正如 Aserre 所指出的那样,输入你想要的那些愚蠢的回车,但首先,你为什么需要它们.如今,绝大多数 Windoze 应用程序都可以愉快地处理单独的换行符作为行终止符。在您的帖子中,您提到要在 Windows 上 *打开* 文件。这究竟是什么意思?

标签: linux bash shell unix dos


【解决方案1】:

请看一下:

sed -r -i 's:\r$:\r\n:g' your-file-name.txt

【讨论】:

  • 我尝试使用 sed -r -i 's:\r$:\r\n:g' your-file-name.txt 并且在我的记事本中它仍然像以前一样打开,但是当我用另一个文本编辑器(写字板)打开它,它已经像我想要的那样显示了。我怀疑安装在我的电脑服务器上的记事本
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-28
  • 1970-01-01
  • 2010-10-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多