Il est subtil de savoir si c'est aussi efficace que ça, mais je l'ai essayé entre les travaux.
Il copiera certains fichiers localement à partir du serveur de fichiers. Créez également un répertoire.
On me confie une toute nouvelle tâche quotidienne consistant à imprimer la liste des tâches de la journée et à la distribuer au responsable. Vous devez être prêt à créer un répertoire localement et à y copier les fichiers du serveur de fichiers. Je pensais que si j'écrivais un petit code, il serait prêt en un seul clic, alors j'ai essayé.
Créez un répertoire pour stocker les fichiers de ce jour localement selon la règle aaaammjj. Après cela, copiez le fichier de la liste des tâches à partir du serveur de fichiers.
Tout d'abord, obtenez l'heure à laquelle le script est exécuté, puis obtenez la date sous forme de chaîne de caractères basée sur celle-ci.
os.mkdir(path)Créez un répertoire avec. C'est la fin de la première étape.
Ensuite, récupérez la liste des fichiers du répertoire contenant la liste des tâches du serveur de fichiers avec ```os.listdir (chemin) `` `.
Puisque le nom de fichier à copier a une chaîne de caractères commune [hoge] au début, vous pouvez rechercher le fichier correspondant avec `` `` str.startswith (prefix) '' ``.
Comme la liste de fichiers est une liste, elle recherche les fichiers un par un dans une boucle, et dès qu'elle est trouvée, elle est copiée dans le répertoire créé à partir du serveur de fichiers avec `` `` shutil.copy (src, dst) '' ``.
Ceci complète la préparation au travail quotidien. Tout ce que vous avez à faire est de l'imprimer.
#encode:utf-8
import os import shutil from datetime import datetime
if name == "main":
#Obtenez l'heure actuelle
today = datetime.now().strftime('%Y/%m/%d %H:%M:%S')
y = datetime.now().strftime('%Y')
m = datetime.now().strftime('%m')
d = datetime.now().strftime('%d')
#Nom de dossier(yyyymmdd)
dirname = y + m + d
#Créer le dossier
os.mkdir(dirname)
#Répertoire avec les fichiers que vous souhaitez copier.
copydir = 'B:/foo/bar/baz/'
#Obtenir une liste des fichiers placés dans un répertoire
files = os.listdir(copydir)
for n in range(len(files)):
#Copiez les fichiers avec des chaînes communes dans le dossier aaaammjj
if files[n].startswith('【hoge】'):
print(files[n])
shutil.copy(copydir + files[n] , './' + dirname + '/' + files[n])
### [PostScript 2016.10.01]
[Correction]
Puisqu'il est clairement faux, je l'ai corrigé en ```encode: utf-8``` → ```encoding: utf-8```. Merci de le souligner dans les commentaires.
**【mauvaise nouvelle】**
Il a été dit que le travail quotidien était achevé au fur et à mesure que la phase progressait.
C'est un code que j'ai écrit avec beaucoup d'efforts, mais il semble qu'il n'entrera pas en jeu avant un certain temps ('ω')
Cependant, comme la fonction est simple, elle peut être applicable à d'autres applications.