Question
Supprimer un retour à la ligne
- rocketter
- Auteur du sujet
- Hors Ligne
- Membre senior
-
- Messages : 46
- Remerciements reçus 0
je manipule PowerShell depuis 2 semaines environ, dans un fichier je souhaite supprimer une chaine de caractères qui débute une ligne ; je parviens à supprimer la chaine de caractères mais je ne parviens pas à supprimer le retour à la ligne.
Voici mon code :
[code:1]
(get-content C:\test2\test.txt)|foreach-object {$_ -replace \"A\|\", \"`b\"}|set-content C:\test2\test.txt[/code:1]
Et voici le contenu de mon fichier avant modif :
ligne 1
A|blabla
Et après :
ligne 1
blabla
Mon but serait d'avoir :
ligne 1blabla
Merci d'avance de votre aide.
Connexion ou Créer un compte pour participer à la conversation.
- xyz
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 69
cela dépend de la construction de la ligne, essaie ceci :
[code:1]
#Lit tout le fichier
#sinon dans le pipeline $_ est égal au contenu d'une seule ligne
$s=[IO.File]::ReadAllText('C:\test2\test.txt')
#cf. msdn.microsoft.com/fr-fr/library/h5181w5w.aspx#End
$s -replace '(\n|\r|\r\n)A\|', ''
#Visu des caractères
[byte[]][char[]]($s -replace '(\n|\r|\r\n)A\|', '')
[/code:1]
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- rocketter
- Auteur du sujet
- Hors Ligne
- Membre senior
-
- Messages : 46
- Remerciements reçus 0
merci de ta réponse, par contre c'est la première fois que je vois la syntaxe que tu as utilisé :
(syntaxe à utiliser pour se servir de la méthode ReadAllText dde la classe File du framework .Net ?)[IO.File]::ReadAllText('C:\test2\test.txt')
ou
[byte[]][char[]]
Sinon ça ne fonctionne pas mais c'est bizarre car à l'IDE powershell, j'ai ceci :
<br><br>Message édité par: rocketter, à: 27/04/15 16:11ligne 1ligne2
108
105
103
110
101
32
49
108
105
103
110
101
50
13
10
13
10
ligne 1
A|ligne2
Connexion ou Créer un compte pour participer à la conversation.
- xyz
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 69
C'est un appel d'une méthode statique.syntaxe à utiliser pour se servir de la méthode ReadAllText dde la classe File du framework .Net ?
rocketter écrit:
C'est une suite de transtypage (cast)ou
[byte[]][char[]]
Communique nous un fichier de test.<br><br>Message édité par: Laurent Dardenne, à: 27/04/15 16:20
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- rocketter
- Auteur du sujet
- Hors Ligne
- Membre senior
-
- Messages : 46
- Remerciements reçus 0
20150421164500^|MP|135F
A|~135~5110~4~C~67202|||M||||201504211646||
Moi je souhaiterais ceci :
20150421164500^|MP|135F~135~5110~4~C~67202|||M||||201504211646||
Connexion ou Créer un compte pour participer à la conversation.
- xyz
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 69
J'ai testé la regex avec un fichier de test (UFT8), mais le tiens a peut-être un autre encodage...
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Supprimer un retour à la ligne