ubuntu更换镜像源及巧妙使用Python脚本解决文件编码问题

一些早期项目,在windows下开发的,到linux下遇到不少编码问题。尤其是在处理大量文本文件时,乱码问题常常让人头疼不已。乱码不仅影响工作效率,还可能导致重要信息丢失。幸运的是,通过编写简单的Python脚本,我们可以轻松地解决文本文件的转码问题,大幅提升工作效率。本文将详细介绍如何使用Python脚本来批量转换文件编码,并提供一个实用的示例脚本。

ubuntu更换镜像源

bash 复制代码
cd /etc/apt/

然后把之前的镜像源复制一份存着,名字可以任意,例如first即可。

复制代码
sudo cp sources.list cources.list.fisrt

然后继续打开镜像源的相关列表:

复制代码
sudo vim sources.list

替换以下内容:

bash 复制代码
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
 

然后按 :wq 退出保存即可,最后通过 sudo apt-get upgrade 更新我们的apt即可。

分享一宝藏网站:https://fishros.com/#/fish_home

一、乱码问题概述

乱码问题通常发生在文本文件的编码不一致时。常见的编码有 GBK、UTF-8、UTF-16 等。当一个文件以一种编码方式保存,但在读取时使用了不同的编码方式时,就会出现乱码现象。

二、Python脚本实现文件转码

Python 提供了强大的文件处理功能,可以方便地实现文件的编码转换。下面是一个简单的脚本示例,用于批量转换文件夹中的所有 .txt 文件。

三、示例脚本

python 复制代码
import os

def convert_encoding(file_path, from_encoding='gbk', to_encoding='utf-8'):
    try:
        # 读取文件内容
        with open(file_path, 'r', encoding=from_encoding) as f:
            content = f.read()
        
        # 写入文件内容
        with open(file_path, 'w', encoding=to_encoding) as f:
            f.write(content)
        
        print(f"File {file_path} has been converted from {from_encoding} to {to_encoding}")
    
    except Exception as e:
        print(f"Error converting {file_path}: {e}")

def batch_convert(folder_path, from_encoding='gbk', to_encoding='utf-8'):
    if not os.path.isdir(folder_path):
        print(f"Invalid folder path: {folder_path}")
        return
    
    for root, _, files in os.walk(folder_path):
        for file in files:
            if file.endswith('.txt'):
                file_path = os.path.join(root, file)
                convert_encoding(file_path, from_encoding, to_encoding)

# 使用示例
batch_convert('./your_folder_path')

其他资源

https://blog.csdn.net/u012689588/article/details/16950089

GL/gl.h: No such file or directory # include && cannot find -lGL - 狂奔~ - 博客园

已解决Ubuntu系统下载更新源包时提示 "Failed to fetch"错误-CSDN博客

Qt4.7 升级至 Qt5.3遇到的项目编译不过问题 - 阿青1987 - 博客园

Unity 开发技巧:一键转换脚本编码,从 GB2312 到 UTF-8_unity utf-8-CSDN博客

告别乱码噩梦!一键解决文本转码难题,工作效率翻倍!_文本乱码转码助手-CSDN博客

(转载)Windows 查找占用串口(COM)的进程 - ckrgd - 博客园

鱼香ROS社区

相关推荐
chlk1239 小时前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑9 小时前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件10 小时前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒10 小时前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号19 小时前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash1 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI1 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行2 天前
Linux和window共享文件夹
linux
木心月转码ing2 天前
WSL+Cpp开发环境配置
linux
蝎子莱莱爱打怪3 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes