Maison > Article > Opération et maintenance > Des caractères tronqués apparaissent lors de l'exécution de fichiers écrits sous Windows sous Linux
Question :
Copiez le fichier code (.m) écrit en matlab sous Windows vers Linux (Ubuntu), et les commentaires sont dans Chinois C'est du charabia, et vice versa, c'est le même problème.
Raison :
Le codage par défaut utilisé sous Windows est GB2312
, et le codage par défaut utilisé sous Linux est UTF-8
. Par conséquent, le code généré sous Windows est encodé en GB2312, ce qui est bien entendu reconnu comme du code tronqué sous Linux. À l'inverse, il en va de même pour le code tronqué.
Tutoriels vidéo gratuits recommandés : Tutoriels vidéo Linux
Solution :
Transcodez directement le format d'encodage du fichier.
Utilisez la commande iconv
sous Linux pour changer l'encodage du fichier :
test1.m est converti de GB2312 en UTF-8 (le code de matlab sous windows fonctionne sous linux)
iconv -f GB2312 -t UTF-8 test1.m -o test1.m
test2.m est converti d'UTF-8 en GB2312 (le code de matlab sous Linux fonctionne sous windows)
iconv -f UTF-8 -t GB2312 test2.m -o test2.m
S'il y a trop de fichiers et qu'un traitement par lots est requis, vous pouvez utilisez le script shell écrit comme suit pour convertir par lots l'encodage.
Instructions d'utilisation : placez le script dans le dossier qui doit être converti et exécutez le script pour convertir tous les fichiers du répertoire actuel et de ses sous-répertoires dans la méthode d'encodage spécifiée.
est exécuté comme suit :
est converti de GB2312 en UTF-8
./convertMatlab.sh win
est converti de UTF-8 en GB2312
./convertMatlab.sh linux
Astuce : Ordinaire les utilisateurs n'ont pas d'autorisations d'exécution, doivent utiliser chmod +x convertMatlab.sh
pour augmenter les autorisations d'exécution
Articles et didacticiels connexes recommandés : tutoriel Linux
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!