今天在Linux使用tar
指令打包并下载一个网站,下载本地解压后一看,傻眼了,中文文件名全部是乱码。
文件名原本是这样:
下载到本地解压后变成这样:
经过测试,无论使用tar
还是tar.gz
打包,中文文件名都会变成乱码。这可怎么办呢?
使用zip指令打包网站
通过查阅相关资料,并实践测试,发现可以使用zip
的指令进行网站压缩打包,该指令的写法如下:
zip -r 压缩文件名.zip 目录路径
例如,网站路径是/home/wwwroot/mysite,那么使用zip
指令打包可以这样写:
zip -r /home/wwwroot/mysite/mysite.zip /home/wwwroot/mysite
打包结束下载到本地后,直接解压即可,这时你会发现,中文文件名是不会改变的。
笔记
测试发现,使用
zip
指令打包的网站文件,压缩包体积会比tar.gz
大一倍。所以,如果你的网站文件名不含中文,那么就不建议使用zip
指令来打包了。
使用unzip指令解压zip压缩包
使用zip
打包网站,自然要知道对应的上传解压的问题。
本地把网站打包为zip
格式的压缩文件,上传后可以用unzip
指令来解压。
解压缩zip
文件,使用unzip
指令的语法如下:
unzip 压缩文件名.zip
我们希望将解压后的文件放置在指定目录,可以使用 -d
选项:
unzip 压缩文件名.zip -d 目标目录
例如,网站路径是/home/wwwroot/mysite,那么使用unzip
指令解压可以这样写:
unzip /home/wwwroot/mysite/mysite.zip -d /home/wwwroot/mysite
指令执行完后,压缩包的文件就解压到/home/wwwroot/mysite目录下了。这里要注意的是压缩文件和目标目录的路径要写正确。
总结
本文介绍了如何解决tar
打包后中文文件名乱码的问题,使用zip
代替tar
打包即可。