Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Mots clés Nom d'utilisateur
Messages sans réponse

Modifier un fichier texte commande unix

alain, le dimanche 11 février 2007 à 00:15:48 
 Signaler ce message aux modérateurs

Bonjour tout le monde,
J'aurai besoin d'un petit coup de main pour modifier un fichier texte.

au départ j'ai un fichier qui contient des enregistrements comme celui ci:

"10/02/2007 20:34:09","adresse@domaine.fr","Erreur de connexion au serveur de messagerie"

et je voudrai récupérer juste :
"adresse@domaine.fr"

je sais que c'est possible avec un filtre, mais impossible de me souvenir lequel.

Merci à tous !

Configuration: Windows XP
Firefox 2.0.0.1

1

ekra, le dimanche 11 février 2007 à 03:12:08
  • +1

Bonjour,

essaie ceci :

cut -d "," -f2 fichier

Vive Linux, les vacances et les gauffres !

Répondre à ekra

2

lami20j, le dimanche 11 février 2007 à 08:45:41

Salut,

si tu veux sans les guillemets

lami20j@debian:~$ cat alain
"10/02/2007 20:34:09","adresse@domaine.fr","Erreur de connexion au serveur de messagerie"
"10/02/2007 20:34:09","adresse1@domaine.fr","Erreur de connexion au serveur de messagerie"
"10/02/2007 20:34:09","adresse2@domaine.fr","Erreur de connexion au serveur de messagerie"
lami20j@debian:~$ cat alain | cut -d"," -f2
"adresse@domaine.fr"
"adresse1@domaine.fr"
"adresse2@domaine.fr"
lami20j@debian:~$ cat alain | perl -ne 'print ((split /[,"]/)[4],"\n")'
adresse@domaine.fr
adresse1@domaine.fr
adresse2@domaine.fr
lami20j

Répondre à lami20j

3

jipicy, le dimanche 11 février 2007 à 08:53:00
  • +2

Salut,

Tu peux aussi utiliser "awk" à la place de "cut" :

awk -F, '{ print $2 }' fichier
et "sed" à la place de "perl" :
sed 's/.*,\"\(.*\)\",.*/\1/' fichier
;-))
Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

4

lami20j, le dimanche 11 février 2007 à 09:03:20
  • +1

Re,

ou grep à la place de cut, perl, sed, awk

lami20j@debian:~$ cat alain | grep -oE '\w+\@\w+\.fr'
adresse@domaine.fr
adresse1@domaine.fr
adresse2@domaine.fr
Na!:-))

lami20j

Répondre à lami20j

5

jipicy, le dimanche 11 février 2007 à 09:10:55
  • +1

D'abord on dit : Nananère !

Puis t'as oublié l'exemple avec grep qui inclut les guillemets ;-DD

Au passage, j'avais oublié l'expression qui exclut les guillemets avec "awk" :

awk -F\" '{ print $4 }'
;-))
Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

6

lami20j, le dimanche 11 février 2007 à 09:15:13
  • +1

D'abord on dit : Nananère ! Ok j'ai noté :-)
Toutefois Na!

Pour le cas avec les guillemets

lami20j@debian:~$ cat alain | grep -oE '"\w+\@.*\.fr"'
"adresse@domaine.fr"
"adresse1@domaine.fr"
"adresse2@domaine.fr"
Bonne journée JP :-) lami20j

Répondre à lami20j

7

lami20j, le dimanche 11 février 2007 à 09:33:33
  • +1

Et aussi sans guillements avec cut

lami20j@debian:~$ cat alain | cut -d'"' -f4
adresse@domaine.fr
adresse1@domaine.fr
adresse2@domaine.fr
et avec guillemets en perl
lami20j@debian:~$ cat alain | perl -ne 'print ((split /,/)[1],"\n")'
"adresse@domaine.fr"
"adresse1@domaine.fr"
"adresse2@domaine.fr"
Alain je pense que tu as la sauce complete :-))
lami20j

Répondre à lami20j

8

jipicy, le dimanche 11 février 2007 à 09:43:42
  • +1

C'est plus une sauce, c'est de la béchamel ;-))

Pour compléter, avec "grep", mieux vaut prévoir que toutes les adresses ne se termineront pas nécessairement par "fr" et donc anticiper...

grep -oE '"\w+\@.*\.[a-z]{2,3}"'
;-))
Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

9

patco, le mardi 19 février 2008 à 14:08:55

Je voudrais savoir les syntaxes et les descriptions des commandes suivantes :
usermod
mkdir
lp
userdel
service
chkconfig

Répondre à patco

10

jipicy, le mardi 19 février 2008 à 15:01:26
  • +1

man usermod
man mkdir
man lp
man userdel
man service
man chkconfig

Z'@+...che.

JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

11

Belmondo, le samedi 13 septembre 2008 à 17:59:53

Bonsoir,

Est-il possible, plutôt que d'afficher seulement l'adresse dans la console, de la copier dans un fichier texte déjà existant, à la suite d'une liste d'adresse (une adresse par ligne).

Merci à tous.

Répondre à Belmondo

12

Belmondo, le samedi 13 septembre 2008 à 18:52:46

Merci wiki :D
J'ai trouvé, c'est tout simple : il faut ajouter >> nom_du_fichier_texte
Ce qui donne

grep -oE '\w+\@\w+\.fr' >> nom_du_fichier_texte.txt 


Merci

Répondre à Belmondo

13

Belmondo, le samedi 13 septembre 2008 à 18:57:28

C'est encore moi, tout d'abord, c'est pour dire que j'ai oublié le nom du fichier dans lequel se trouve l'adresse mail à rechercher ce qui donne plutôt

grep -oE '\w+\@\w+\.fr' nom_du_fichier_ou_se_trouve_les_emails >> nom_du_fichier_de_sauvegarde.txt 


Deuxièmement, est-il possible de faire cette manipulation directement depuis une page web, bien évidement la commande

grep -oE '\w+\@\w+\.fr' http://domaine.com/page ne marche pas, mais y a-t-il un autre moyen ?

Merci à tous (même si je suis un peu seul pour l'instant :D )

Répondre à Belmondo

14

jipicy, le dimanche 14 septembre 2008 à 10:20:20
  • +1

Salut Jean-Paul,

Essaye ça :

wget -q -O - URL_de_la_page | grep -oe '\w\+@\w*.\w\+'
;-))
$ man woman
Il n'y a pas de page de manuel pour woman.

Répondre à jipicy

15

Belmondo, le jeudi 18 septembre 2008 à 14:17:01

Merci beaucoup, ça marche !!

En fait j'avais trouvé entre temps, sauve que j'étais parti pour faire un fichier .sh avec l'utilisation d'un fichier texte intercalé entre les deux commande grep et wget

Le seul problème de cette méthode, c'est que la page reste sous forme de html et si dans le code de la page il y a par exemple adresse@domaine.fr<br> comme il n'y a pas d'espace entre .fr et <br> ça ne marche pas !

@+

Répondre à Belmondo

16

 dubcek, le jeudi 18 septembre 2008 à 15:47:58
  • +1

Hello
et en utilisant w3m au lieu de wget
w3m - a text based Web browser and pager
w3m [options] [URL or filename]

Répondre à dubcek
Commande DOS pour modifier 'un fichier texte Bonjour, je tiens à remercier la personne qui repond à ma question. je cherche une commnde DOS qui permet de modifier lecotenu d'un fichier texte(CSV) par example en ajoutant un mot au debut des lignes et des mots à l'en tete des lignes. je vs... www.commentcamarche.net/forum/affich-1469711-commande-dos-pour-modifier-un-fichier-texte
Commande unix pour copier un dossier salut, quelle est la commande unix pour copier un dossier contenant plusieurs fichiers dans un shell merci d'avance de me répondre A+ www.commentcamarche.net/forum/affich-599275-commande-unix-pour-copier-un-dossier
[MS-Dos] Ecrire dans un fichier texte en batch Pour écrire dans un fichier texte, il suffit d'utiliser une redirection ">" :echo texte_à_ecrire > fichier_de_sortie.txtPour écrire à la fin d'un texte existant (concaténation) :echo "ecriture a la fin du fichier ">> fichier_de_sortie.txt www.commentcamarche.net/faq/sujet-2695-ms-dos-ecrire-dans-un-fichier-texte-en-batch
Envoi de commandes CISCO publipostées via SSH/TelnetExpect en action Informations générales publipmachin point cheu ? Mais c'est quoi au juste ? Le contenu des fichiers annexes commandes.txt liste.txt THE Script Commentaires Remerciements Questions / Report de Bugs /... www.commentcamarche.net/faq/sujet-9988-envoi-de-commandes-cisco-publipostees-via-ssh-telnet
[Python] remplacer caractères fichier texte (Résolu)Bonjour, je débute en programmation et on m'a donné un exercice à faire sous python. Le problème est le suivant : écrire une commande qui ouvre un fichier texte, parcourir l'ensemble du fichier, remplacer certains caractères par d'autres que j'ai au... www.commentcamarche.net/forum/affich-2445404-python-remplacer-caracteres-fichier-texte
Creer un fichier texte en invite de commande (Résolu)Bonjour, C'est peut etre une question bete mais ca me gêne de ne pas savoir. Je voudrais savoir si il est possible de créer un fichier texte sous une invite de commande ? J'ai beau cherché je ne trouve pas et ca me turlupine ! Merci d'avance www.commentcamarche.net/forum/affich-10973736-creer-un-fichier-texte-en-invite-de-commande
Commandes UNIXTableau des principales commandes UNIX Commande Unix Description Options ls liste le contenu d'un répertoire -a Affiche tous les fichiers, y compris les fichiers cachés ... www.commentcamarche.net/contents/unix/unixcomm.php3
UNIX - Les fichiersIntroduction aux fichiers Unix Sous les systèmes UNIX tout élément est représenté sous forme de fichier. L'ensemble des fichiers est architecturé autour d'une unique arborescence dont la base, appelée racine, est notée «/». Types de... www.commentcamarche.net/contents/unix/unix-fichiers.php3
Extensions de fichiersIntroduction aux fichiers Un fichier est une suite d'informations binaires, c'est-à-dire une suite de 0 et de 1. Ce fichier peut être stocké pour garder une trace de ces informations. Un fichier texte est un fichier composé de caractères stockés... www.commentcamarche.net/contents/fichier/extension.php3