【问题标题】:How to disable encoding in a text-editor?如何在文本编辑器中禁用编码?
【发布时间】:2019-05-11 07:40:23
【问题描述】:

这是一个如此基本的问题,我很惊讶我无法轻易找到答案:

我使用 Notepad++ 编写脚本。有人给我发了一些 shell 脚本 (.sh) 的代码,我可以根据自己的需要进行修改。我只是使用 Notepad++(在 Windows 上)更改了一小部分文本,并使用 FileZilla (SFTP) 将其上传到我的服务器(Debian Linux)。

我的服务器管理员花了一个小时才找到一些问题,即:

  • FileZilla,无论出于何种原因,默认为 ASCII 而不是二进制! (将其更改为二进制并删除 .sh 与 ASCII 的关联)
  • 权限错误,chmod 解决了这个问题

问题是它仍然没有工作。为了修复它,我的服务器管理员只需将服务器上的文本(使用 vim 或 nano)复制到一个新的 shell 脚本文件中并保存。在他一直说问题是 Windows(他喜欢讨厌)之前,但似乎是文本编辑器使用的编码正在破坏文件。

他说我的文本编辑器编码需要说“无”。但是,这不是一个选项 - 只有 ANSI、UTF 和 UTS 变体是选项!

如何在 Windows 上创建一个带有 no 编码的 shell 脚本,以免损坏?

我需要能够简单地将文件传输到服务器,我不能在服务器上修改一次,这是完全不切实际的。

【问题讨论】:

  • @BasileStarynkevitch 文件已经是 UTF-8,他表示这是问题所在
  • @BasileStarynkevitch 澄清一下,如果你知道如何让 UTF-8 在这里工作,我也会接受,但我没有在那个链接中找到任何对我有帮助的东西。跨度>
  • 文本编辑器显示text,但是文件包含bytes,所以没有编码就无法保存文件!你可能想要的是纯 ASCII 编码,但如果你有非 ASCII 字符,那将不起作用。
  • Notepad++右下角编码“UTF-8”的左边,点击Convert UNIX(LF) format。如果不是这种情况,请务必将编码更改为 UTF-8。

标签: linux windows encoding notepad++


【解决方案1】:

在 Notepad++ 上修复 EndOfLine 和编码:

在 Notepad++ 的右下角,您可以右键单击左侧的编码“UTF-8”,然后单击转换 UNIX(LF) 格式。如果不是这种情况,请务必将编码更改为 UTF-8。

在 Filezilla 中:

传输模式:自动

【讨论】:

  • 就我个人而言,二进制传输比 ASCII 更好,但 UNIX(LF) 是最重要的,永远不会想到...
  • 我只是写我的配置。我从来没有改变过传输模式,它总是对我有用。我现在更喜欢使用 MobaXterm + Notepad++ 在 SSH 中编辑文件。
猜你喜欢
  • 1970-01-01
  • 2013-10-02
  • 2012-01-09
  • 1970-01-01
  • 2020-08-05
  • 1970-01-01
  • 2018-05-05
  • 2022-06-23
  • 1970-01-01
相关资源
最近更新 更多