Problème de restauration de sauvegarde

anakin6661 Messages postés 90 Statut Membre -  
choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour à tous,

Je rencontre actuellement une problématique pour effectuer une restauration de données à partir du logiciel Acronis.
Dés que je fais une restauration, les dossiers vides créés par les utilisateurs stoppent la restauration.
Je ne vois pas d'autre solution que de créer des fichiers lambda et masqué dans ces dossiers vides.
A la main, c'est infaisable, j'ai des centaines, voir des milliers de dossier.
Je souhaiterai passer par un script PowerShell, j'ai trouvé la commande pour lister les dossiers mais maintenant se pose la question de comment créer un fichier masqué dans chaque dossier automatiquement.

Get-ChildItem "D:\" -Directory -Recurse | Where-Object -FilterScript {($_.GetFiles().Count -eq 0) -and $_.GetDirectories().Count -eq 0} | Select-Object -ExpandProperty FullName | Out-File C:\log\dossier_vide.txt

Il faut que je rajoute la commande pour stocker le résultat dans un fichier (j'ai rajouté | Out-File C:\log\dossier_vide.txt à ma commande) qui me servira ensuite à la création automatique des fichiers masqués.

Cette création de fichier en plus masqué, je n'ai pas pu trouver la commande PowerShell sur le net.
Pourriez vous m'assister sur cela ?
Si vous voyez une erreur dans mon script ou un script plus simple, je suis aussi preneur.

--
Merci Aux personnes qui nous répondent sans demander quoi que ce soit en retour si ce n'est du respect et peu de fautes ... :)

2 réponses

  1. brucine Messages postés 24735 Date d'inscription   Statut Membre Dernière intervention   4 154
     
    Bonjour,

    Il y a eu une question un peu comparable sur le forum il y a quelques jours.

    Sous réserve (je n'ai pas vérifié ta syntaxe PowerShell) que ne soit extrait dans le log que le nom des dossiers sans leur chemin, le batch suivant devrait le faire; si le chemin est inclus, il faut bien sûr remplacer "D:\!FOLD!\" par !FOLD!


    @echo off
    CHCP 65001 >nul
    COPY /Y NUL C:\log\vide.txt
    ATTRIB +H C:\log\vide.txt

    SETLOCAL ENABLEDELAYEDEXPANSION

    FOR /F "delims=" %%a IN ('type "C:\log\dossier_vide.txt"') DO SET FOLD=%%a & CALL :PROCESS
    GOTO :EOF

    :PROCESS
    COPY "C:\log\vide.txt" "D:\!FOLD!\" >nul
    :EOF
    0
  2. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    bonjour

    Tu as essayé avec < -Force > ?
    0