Question
Aide pour projet/ Remplacer caractères nomFichier
- Richard Lazaro
- Hors Ligne
- Membre platinium
-
- Messages : 530
- Remerciements reçus 0
[code:1]
$add = get-childitem -path $textbox1.text | Where-Object {!$_.PSIsContainer}
[/code:1]
Cela doit être possible de le gérer avec le paramètre Filter de la cmdlet Get-ChildItem mais je n'ai pas réussi à rapidement bien le faire fonctionner.
Bien Cordialement,
Richard Lazaro.
Think-MS : (Get-Life).Days | %{ Learn-More }
\\"Problems cannot be solved by the same level of thinking that created them.\\" - Albert Einstein
Connexion ou Créer un compte pour participer à la conversation.
- mens
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 8
- Remerciements reçus 0
Pour cela tu repasses chaque objet et tu vérifies un attribut indicant si c'est un container (dossier) ou non
[code:1]
$add = get-childitem -path $textbox1.text | Where-Object {!$_.PSIsContainer}
[/code:1]
Cela doit être possible de le gérer avec le paramètre Filter de la cmdlet Get-ChildItem mais je n'ai pas réussi à rapidement bien le faire fonctionner.
Bien Cordialement,
Richard Lazaro.
merci, cela a fonctionné.
Y'aurais-t-il une méthode pour vider denouveau les listbox?
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 68
mens écrit:
Oui, voir la doc du composant , propriété Items .Y'aurais-t-il une méthode pour vider denouveau les listbox?
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- mens
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 8
- Remerciements reçus 0
J'ai une méthode qui ne veut pas vraiment fonctionner.
[code:1]
foreach ($file in dir)
{
$new=$file.name.replace(\" \",\"_\"«»)
ren $file $new
}
[/code:1]
Cela me rend les deux suivantes erreurs:
Rename-Item : Source and destination path must be different.
At line:113 char:4
+ ren <<<< $file $new
+ CategoryInfo : WriteError: (C:\Dokumente un...strator\WINDOWS:Str
ing) [Rename-Item], IOException
+ FullyQualifiedErrorId : RenameItemIOError,Microsoft.PowerShell.Commands.Re
nameItemCommand
Rename-Item : The process cannot access the file because it is being used by anot
her process.
At line:113 char:4
+ ren <<<< $file $new
+ CategoryInfo : WriteError: (C:\Dokumente un...ator\NTUSER.DAT:Str
ing) [Rename-Item], IOException
+ FullyQualifiedErrorId : RenameItemIOError,Microsoft.PowerShell.Commands.Re
nameItemCommand
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 68
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- mens
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 8
- Remerciements reçus 0
J'ai le suivant:
[code:1]
$add|%{rename-item $_.fullname -newname ($_ -replace \" \",\"_\"«»)}
$add|%{rename-item $_.fullname -newname ($_ -replace \"ä\",\"ae\"«»)}
$add|%{rename-item $_.fullname -newname ($_ -replace \"ö\",\"oe\"«»)}
[/code:1]
pour remplacer les caractères, mais le problème.
Si il y a qu'un fichier avec un caractère spécial, cette méthode fonctionne très bien. Mais dès qu'il y a plusieurs fichiers avec plusieurs caractères spéciaux, là il y a des erreurs.
Rename-Item : Cannot rename because item at 'C:\Dokumente und Einstellungen\HP_Ad
ministrator\Desktop\Test\2 11020_10_466aeü.JPG' does not exist.
At line:111 char:23
+ $add|%{rename-item <<<< $_.fullname -newname ($_ -replace \"ä\",\"ae\")}
+ CategoryInfo : InvalidOperation: (
ationException
+ FullyQualifiedErrorId : InvalidOperation,Microsoft.PowerShell.Commands.Ren
ameItemCommand
Rename-Item : Cannot rename because item at 'C:\Dokumente und Einstellungen\HP_Ad
ministrator\Desktop\Test\o e_ü.JPG' does not exist.
At line:111 char:23
+ $add|%{rename-item <<<< $_.fullname -newname ($_ -replace \"ä\",\"ae\")}
+ CategoryInfo : InvalidOperation: (
ationException
+ FullyQualifiedErrorId : InvalidOperation,Microsoft.PowerShell.Commands.Ren
ameItemCommand
Rename-Item : Cannot rename because item at 'C:\Dokumente und Einstellungen\HP_Ad
ministrator\Desktop\Test\2 11020_10_466aeü.JPG' does not exist.
At line:112 char:23
+ $add|%{rename-item <<<< $_.fullname -newname ($_ -replace \"ö\",\"oe\")}
+ CategoryInfo : InvalidOperation: (
ationException
+ FullyQualifiedErrorId : InvalidOperation,Microsoft.PowerShell.Commands.Ren
ameItemCommand
Rename-Item : Cannot rename because item at 'C:\Dokumente und Einstellungen\HP_Ad
ministrator\Desktop\Test\o e_ü.JPG' does not exist.
At line:112 char:23
+ $add|%{rename-item <<<< $_.fullname -newname ($_ -replace \"ö\",\"oe\")}
+ CategoryInfo : InvalidOperation: (
ationException
+ FullyQualifiedErrorId : InvalidOperation,Microsoft.PowerShell.Commands.Ren
ameItemCommand
Mais parcontre si je le lance plusieurs fois tous les fichiers sont renommés, il a besoin d'un lancement par caractère spécial. Pourrait-t-on maider à trouver une méthode pour faire tout en un lancement?
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Aide pour projet/ Remplacer caractères nomFichier