Linux学习23-Xftp上传文件显示乱码问题
前言
当我们在windows新建一个文件,里面有中文时,使用Xftp上传到linux服务器上,会出现乱码问题。
- Windows的默认编码为GBK
- Linux的默认编码为UTF-8
Xftp上传文件乱码
现在 windows 电脑上新建一个txt文件,命名为"中文.txt", 并且写入中文内容:上海-悠悠。

使用 xhsell 的 xftp 工具上传到linux服务器上

首先在xftp上传页面,并没有出现乱码问题
在linux上查看时,却出现乱码了
[root@yoyo docker-run]# ll
-rw-r--r-- 1 root root 422 Aug 23 00:15 test_h.py
-rw-r--r-- 1 root root 9 Oct 13 10:11 ????.txt
-rw-r--r-- 1 root root 10 Oct 13 09:55 yoyo.txt
出现这个问题主要原因是因为Windows上默认的GBK编码,Linux默认的是UTF-8,另外Xftp传输工具的编码也得设置下
Xftp 设置编码
打开 Xftp 工具,设置属性-编码格式-勾选 UTF-8 格式

再重新上传文件,查看
[root@yoyo docker-run]# ll
-rw-r--r-- 1 root root 9 Oct 13 10:21 中文.txt
[root@yoyo docker-run]# cat 中文.txt
???-??[root@yoyo docker-run]#
这时候虽然文件名能显示中文了,但是里面的内容还是乱码。解决办法,把windows的源文件编辑的内容设置UTF-8格式
源文件编码UT-8
因为windows系统上的txt文件,左上角选择文件-另存为,会发现文件默认ANSI编码

解决办法1:可以在另存为的时候,修改编码格式为UTF-8,保存。
解决办法2:可以使用一些编辑器写文件内容,比如pycharm等。
修改好之后,重新上传过去,查看就可以正常的显示中文了
[root@yoyo docker-run]# ll
-rw-r--r-- 1 root root 18 Oct 13 10:28 中文.txt
[root@yoyo docker-run]# cat 中文.txt
上海-悠悠
[root@yoyo docker-run]#
Xshell编码设置
如果Xshell 终端页面在查看日志时候,中文显示乱码,需要改下Xshell的设置(一般默认就是UTF-8编码)。
打开Xshell终端-左上角文件-属性-终端-编码-勾选UTF-8

总结:保证三个地方编码(UFF-8)一致即可
- 源文件(xxx.txt)的编码
- 上传工具(Xftp)的编码
- 终端(Xshell)显示工具的编码
Linux学习23-Xftp上传文件显示乱码问题的更多相关文章
- xftp上传文件到虚拟机linux失败问题
如果想通过xftp上传文件到虚拟机linux时,可能会产生上传失败的问题 原因: 因为有些文件是只可读,所以要修改文件权限,可读可写,才可以上传成功. 解决方法: 第一种方法:用xftp连接虚拟机后, ...
- ajax上传文件显示进度
下面要做一个ajax上传文件显示进度的操作,文末有演示地址 这里先上代码: 1.前端代码 upload.html <!DOCTYPE html> <html lang="e ...
- Linux学习22-文件上传与下载(rz,sz)
前言 远程访问linux服务器的时候,我们本地电脑需要和linux服务器上有文件上传和下载的操作,如果安装过xshell和xftp工具,可以使用xftp上传文件和下载文件的操作. 如果不用xftp工具 ...
- Linux中ftp不能上传文件/目录的解决办法
在linux中不能上传文件或文件夹最多的问题就是权限问题,但有时也不一定是权限问题了,像我就是空间不够用了,下面我来总结一些ftp不能上传文件/目录的解决办法 在排除用户组和权限等问题后,最可能引 ...
- axios+Vue上传文件显示进度
一,前言 最近在用Vue,然后上传文件时需要显示进度,于是网上搜了一下,经过自己实测终于也弄明白了 二,效果 三,代码 HTML代码 <div id="app"> &l ...
- HTML5上传文件显示进度
下面我们使用Html 5的新特性file api实现上传文件,并显示上传文件进度百分比.意图是这样的,当选择文件时,显示当前文件信息.这里我们是结合Asp.net MVC做为服务端,您也可以是其它的服 ...
- windows、linux下通过ftp上传文件小脚本
一.windows @echo off #open ip 将要上传文件的IP地址echo open IP>ftp.up #用户名echo ninic>>ftp.up #密码echo ...
- Xsheel远程链接ECS,Xftp上传文件到ECS
下载Xshell 工具:用来远程实现远程访问. 下载Xftp工具:方便用来上传文件. 下载方式直接百度搜索,如下如: 下载完成之后安装. 接下来就是链接云服务器了. 直接百度经验按照步骤来就OK了,如 ...
- Linux服务器下载与上传文件
一.图形化工具 FileZilla.SecureCRT,连接Linux服务器后直接操作 二.命令 使用终端模拟软件连接服务器后,首先安装lrzsz工具包 yum install lrzsz rz ,上 ...
随机推荐
- JUC锁框架_AbstractQueuedSynchronizer详细分析
AQS是JUC锁框架中最重要的类,通过它来实现独占锁和共享锁的.本章是对AbstractQueuedSynchronizer源码的完全解析,分为四个部分介绍: CLH队列即同步队列:储存着所有等待 ...
- Oracle转换字符集操作到底发生了什么?
数据库当前字符集为AL32UTF8,若打算将字符集更换为ZHS16GBK,执行如下命令: "ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_US ...
- 配置 Jenkins 连接 Kubernetes 集群
需求:外部 Jenkins 需要连接 Rancher 中的 Kubernetes 集群. 1.集群 config 文件 Rancher 首页,"集群" --> 右上角&quo ...
- AKKA Router路由
路由概念 大量的actor在并行工作的时候,处理到来的消息流,这时候就需要一个组件或者东西来引导消息从源到目的地Actor,这个组件或者东西就是Router在Akka中,router也是一种actor ...
- [转帖]Mysql各版本介绍及下载
Mysql各版本介绍及下载 http://blog.itpub.net/12679300/viewspace-1251661/ 原创 MySQL 作者:wzq609 时间:2014-08-15 10: ...
- 小程序接口无法传递session校验验证码
今天在写接口的时候发现一个问题,我用apiaaz测试一切正常,但是从小程序接口请求验证码,一直验证失败. 最开始用的图形验证码,查阅了不少资料,最后怀疑是cookie的问题,解决无果,换成了短信验证码 ...
- 小白的C++之路——求质数
初学C++,打算用博客记录学习的足迹.写了两个求质数的程序,修修改改. #include <iostream> #include <math.h> using namespac ...
- Excel批量添加不同的批注
Sub 批量添加不同批注() Dim rng As Range Dim i As String Range("A1:D1").ClearComments For Each rng ...
- mycat在windows环境下安装和启动
1.下载从如下地址下载mycat的安装包: http://www.mycat.io/ eg:Mycat-server-1.6.6.1-release-20181031195535-win.tar.gz ...
- Kafka学习笔记之Kafka自身操作日志的清理方法(非Topic数据)
0x00 概述 本文主要讲Kafka自身操作日志的清理方法(非Topic数据),Topic数据自己有对应的删除策略,请看这里. Kafka长时间运行过程中,在kafka/logs目录下产生了大量的ka ...