Lorsque le contenu du dossier est gâché par certains travaux, vous souhaitez parfois les renommer tous en même temps.
Ce qui a été fait.
En guise de demande,
Ajoutez un bouton à la barre d'outils sur Tablacus Explorer.
Faites un clic droit sur quelque chose comme ça → "Ajouter" pour ouvrir la boîte de dialogue.
//Nom:(adapté)
//type:JScript
//option:(Code ci-dessous)
//icône:(adapté)
var FV = GetFolderView(Ctrl, pt);
var Selected = FV.SelectedItems();
if (Selected) {
var dat = "";
for (var i = 0; i < Selected.Count; i++) {
dat += "\"" + Selected.Item(i).Path + '\" ';
}
if (dat == "") {
alert("not selected.");
} else {
wsh.Run("C:/foo/Src/Python27/python.exe C:/foo/Sample/rename_selected.py " + dat);
}
}
//Après avoir copié le code"ajouter à"alors"OK"
Quant au contenu
Créez un script dans votre propre environnement d'exécution.
rename_selected.py
# coding: Shift_JIS
import os
import sys
def get_selected_list(param):
target_list = []
if len(param) > 1:
for folder in param:
folder = unicode(folder, encoding='shift-jis').replace(unicode("\\", encoding='shift-jis'), "/")
target_list.append(folder)
return target_list
def rename_folder(src_path):
dst_path = src_path
#La règle de remplacement est appropriée, ce qui suit est un exemple de rognage d'un mot spécifique
#C ’est un match à passes complètes, donc c’ est mal si vous êtes pris au milieu.
dst_path = dst_path.replace(unicode(" -copie", encoding='shift-jis'), "")
dst_path = dst_path.replace(unicode(" (1)", encoding='shift-jis'), "")
dst_path = dst_path.replace(unicode("_yymmdd", encoding='shift-jis'), "")
if not os.path.isdir(dst_path):
os.rename(src_path, dst_path)
if __name__ == "__main__":
folder_list = get_selected_list(sys.argv)
for folder in folder_list:
rename_folder(folder)
Le contenu est tellement décent qu'il était difficile de jouer avec le système de fichiers japonais. (En disant que je veux faire ce que j'aime, je ne me suis pas battu contre les expressions régulières particulièrement avancées)
Je me suis demandé si Tablacus Explorer pouvait étendre le script, mais bien sûr, JScript Qu'est-ce que .aspx)?
Donc, je voulais minimiser la description en JScript et lancer le traitement possible vers python, mais c'est ennuyeux de google avec "(keyword) JScript -javascript" ...
Et quand vous en saurez un peu plus, les différences suivantes fonctionneront progressivement ... Notes sur le portage des scripts MDIE vers Tablacus Explorer. Contraste d'objet, etc.
J'ai réussi à atteindre le suivant et à passer un appel sûr.
En termes de technologie élémentaire, les éléments suivants étaient nécessaires.
Pourquoi ne puis-je pas encore sortir de l'enfer python2.7?
Récemment, j'ai écrit un petit script sur Tablacus Explorer, et j'écris souvent un script qui appelle un système d'exécution local à partir de là. C'est complètement la même chose que faire avec bookmarklet + add-on parasite auto-fabriqué sur le navigateur.
Personnellement, comment puis-je connecter le traitement de l'interface graphique à CUI et le traitement du langage de programmation? C'est important, donc j'espère pouvoir surmonter chaque obstacle d'une bonne manière.
Au fait, j'aurais pu créer une application graphique distincte, mais je ne l'ai pas fait. Je voulais le compléter parmi les applications que j'ouvre habituellement, ou je ne voulais pas que les applications supplémentaires fonctionnent dans le petit espace d'affichage. Il suffit d'ajouter un bouton au bord du classeur.
c'est tout.
Recommended Posts