Question
(Résolu) Problème d'accent
- BARTHE
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 25
- Remerciements reçus 0
il y a 16 ans 6 mois #5180
par BARTHE
(Résolu) Problème d'accent a été créé par BARTHE
Je me bat pour arriver à régler un problème d'accent dans le script d'Arnaud Petitjean
[code:1]
$ini = @{}
switch -regex -file c:\test.ini
{
\"^\[(.+)\]$\"
{
$section = $matches[1]
$ini[$section] = @{}
}
\"(.+)=(.*)\"
{
$name, $value = $matches[1..2]
$ini[$section][$name] = $value
}
}
$ini
[/code:1]
Voici le fichier c:\test.ini
[code:1]
[test]
données=essai
[/code:1]
et voici le résultat ...
[code:1]
test {donn?es}
[/code:1]
Merci d'avance pour votre aide !
Message édité par: cyril.barthe, à: 25/08/09 14:36<br><br>Message édité par: cyril.barthe, à: 26/08/09 21:25
[code:1]
$ini = @{}
switch -regex -file c:\test.ini
{
\"^\[(.+)\]$\"
{
$section = $matches[1]
$ini[$section] = @{}
}
\"(.+)=(.*)\"
{
$name, $value = $matches[1..2]
$ini[$section][$name] = $value
}
}
$ini
[/code:1]
Voici le fichier c:\test.ini
[code:1]
[test]
données=essai
[/code:1]
et voici le résultat ...
[code:1]
test {donn?es}
[/code:1]
Merci d'avance pour votre aide !
Message édité par: cyril.barthe, à: 25/08/09 14:36<br><br>Message édité par: cyril.barthe, à: 26/08/09 21:25
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 16 ans 6 mois #5183
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Problème d'accent
J'ai le même pb avec PS V1.
Essaie avec ceci :
[code:1]
switch -regex (${c:\test.ini})
[/code:1]
ça m'a l'air d'être un bug, faudrait vérifier si c'est identique sous la V2...
Essaie avec ceci :
[code:1]
switch -regex (${c:\test.ini})
[/code:1]
ça m'a l'air d'être un bug, faudrait vérifier si c'est identique sous la V2...
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- BARTHE
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 25
- Remerciements reçus 0
il y a 16 ans 6 mois #5186
par BARTHE
Réponse de BARTHE sur le sujet Re:Problème d'accent
Énorme, ça fonctionne merci, j'aurais vraiment pas pu trouver.
Je ne comprend pas le rôle que joue (${ })
Par contre comment je peut insérer une variable à la place de c:\test.ini ?
[code:1]
$path=c:\test.ini
$ini = @{}
switch -regex (${$path})
{
\"^\[(.+)\]$\"
{
$section = $matches[1]
$ini[$section] = @{}
}
\"(.+)=(.*)\"
{
$name, $value = $matches[1..2]
$ini[$section][$name] = $value
}
}
$ini
$value
[/code:1]
le script ouvre le fichier ini
Merci encore pour tes lumières.
ps : Problème identique sous seven RC avec pwshell v2
Message édité par: cyril.barthe, à: 25/08/09 15:53<br><br>Message édité par: cyril.barthe, à: 25/08/09 16:05
Je ne comprend pas le rôle que joue (${ })
Par contre comment je peut insérer une variable à la place de c:\test.ini ?
[code:1]
$path=c:\test.ini
$ini = @{}
switch -regex (${$path})
{
\"^\[(.+)\]$\"
{
$section = $matches[1]
$ini[$section] = @{}
}
\"(.+)=(.*)\"
{
$name, $value = $matches[1..2]
$ini[$section][$name] = $value
}
}
$ini
$value
[/code:1]
le script ouvre le fichier ini
Merci encore pour tes lumières.
ps : Problème identique sous seven RC avec pwshell v2
Message édité par: cyril.barthe, à: 25/08/09 15:53<br><br>Message édité par: cyril.barthe, à: 25/08/09 16:05
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 16 ans 6 mois #5189
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Problème d'accent
cyril.barthe écrit:
cyril.barthe écrit:
Pour les lumières, ceux sont celles de Bruce Payette.
Comme quoi la doc livrée avec le produit est conséquente mais insuffisante
cyril.barthe écrit:
As-tu créé un post sur MS-Connect ?
Si non je peux le faire prochainement.
Si je me souviens bien c'est un accés au provider, une sorte de raccourcis, je sais qu'il existe, mais je ne l'utilise que rarement.Je ne comprend pas le rôle que joue (${ })
cyril.barthe écrit:
Disons que j'ai pris le temps de tester.Merci encore pour tes lumières.
Pour les lumières, ceux sont celles de Bruce Payette.
Comme quoi la doc livrée avec le produit est conséquente mais insuffisante
cyril.barthe écrit:
Merci pour l'infops : Problème identique sous seven RC avec pwshell v2
As-tu créé un post sur MS-Connect ?
Si non je peux le faire prochainement.
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- BARTHE
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 25
- Remerciements reçus 0
il y a 16 ans 6 mois #5190
par BARTHE
Réponse de BARTHE sur le sujet Re:Problème d'accent
Non j'avoue que je me suis pas inscrit sur connect ...
Mais c'est vrais que je tombe souvent sur des bugs ...
En parlant de ça, j'ai encore mon problème de variable au sein de
[code:1]switch -regex (${$path})[/code:1]
si je fait ça cela m'ouvre mon test.ini dans le bloc note
Mais c'est vrais que je tombe souvent sur des bugs ...
En parlant de ça, j'ai encore mon problème de variable au sein de
[code:1]switch -regex (${$path})[/code:1]
si je fait ça cela m'ouvre mon test.ini dans le bloc note
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 16 ans 6 mois #5191
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Problème d'accent
cyril.barthe écrit:
Du coup je ne pense pas que cela soit possible, je suppose que l'analyseur de la ligne de commande reconnait ce token si on respecte la synaxe ${psdrive:item}.
Sous PS l'accolade indique du code ou une hastable
[code:1]
$sb={code}
#exécute le scriptblock
&{}
#exécute le scriptblock
.{}
function test {}
[/code:1]
Et le dollar indique un groupe d'instruction
[code:1]$(dir;cls)[/code:1]
Ou une variable
[code:1]$Test=\"A\"[/code:1]
Mais la suite ${ me laisse penser que c'est un token, faudrait vérifier ce point avec la v2 qui permet la vision d'un code comme des tokens et pas une ligne de texte.
Qq infos dans ce doc , \"Files, Variable Notation and the Current Drive Location\".
Tu peux consulter la grammaire , le chapitre C.2.3 . (Je n'ai pas trouvé de référence à cette syntaxe
)
Le paramètre -File peut utiliser un pipeline, essaie ainsi.
Sinon reste la génération dynamique si tu en as vraiment besoin
La syntaxe proposée indique au shell de \"passer\" par le drive C:, un PSDrive cela fonctionne avec d'autre drive d'autre provider ( ex : registry).En parlant de ça, j'ai encore mon problème de variable au sein de
[code:1]switch -regex (${$path})[/code:1]
Du coup je ne pense pas que cela soit possible, je suppose que l'analyseur de la ligne de commande reconnait ce token si on respecte la synaxe ${psdrive:item}.
Sous PS l'accolade indique du code ou une hastable
[code:1]
$sb={code}
#exécute le scriptblock
&{}
#exécute le scriptblock
.{}
function test {}
[/code:1]
Et le dollar indique un groupe d'instruction
[code:1]$(dir;cls)[/code:1]
Ou une variable
[code:1]$Test=\"A\"[/code:1]
Mais la suite ${ me laisse penser que c'est un token, faudrait vérifier ce point avec la v2 qui permet la vision d'un code comme des tokens et pas une ligne de texte.
Qq infos dans ce doc , \"Files, Variable Notation and the Current Drive Location\".
Tu peux consulter la grammaire , le chapitre C.2.3 . (Je n'ai pas trouvé de référence à cette syntaxe
Le paramètre -File peut utiliser un pipeline, essaie ainsi.
Sinon reste la génération dynamique si tu en as vraiment besoin
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.058 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- (Résolu) Problème d'accent