![]() |
Bonjour et bienvenu par les États-Unis à la UNIX et Linux Forums! Merci de votre visite et vous joindre à notre communauté mondiale.
|
|
google unix.com
|
|||||||
| Forums | S'inscrire | Forum Rules | Liens | Albums | FAQ | Liste des membres | Calendrier | Recherche | Aujourd'hui, les postes | Marquer les forums comme lus |
| UNIX pour les nuls Questions et réponses Si vous ne savez pas où poster un UNIX ou Linux question, post it here. Tous les systèmes UNIX et Linux, débutants bienvenus! |
Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
|
||||
| Fil | Thread Starter | Forum | Réponses | Last Post |
| Comment lire et comparer plusieurs champs dans une colonne à la fois | ahjiefreak | De programmation et de script Shell | 1 | 06-19-2008 11:08 AM |
| Remplacer les 3 champs avec des valeurs nulles dans le fichier | vukkusila | De programmation et de script Shell | 1 | 09-12-2007 01:10 AM |
| Mélanger avec un datafile Master datafile, émergent! | onthetopo | De programmation et de script Shell | 6 | 05-12-2007 06:36 AM |
| rechercher et remplacer les différents domaines | tungaw2004 | UNIX pour les nuls Questions et réponses | 3 | 03-29-2007 03:16 AM |
| remplacer une section dans un fichier de données | Paprika | De programmation et de script Shell | 4 | 06-17-2005 08:48 AM |
![]() |
|
|
LinkBack | Thread Tools | Recherche sur ce Thread | Rate Thread | Modes d'affichage |
|
|
|
||||
|
Comment puis-je lire / rechercher / remplacer les champs dans un fichier de données csv?
bonjour.
Je suis un peu novice ici, alors s'il vous plaît soyez patient. Ma pierre d'achoppement lors du chargement en CSVS ORACLE tables est la suivante: J'ai besoin de lire un fichier de données csv, vérifier plusieurs champs dans chaque ligne, et si l'un des champs déclaré ZERO A seulement [au lieu de champ de date prévu YYYYMONDD], puis le remplacer par un null / blanc nature. J'ai eu une remise à: cat <datafile> | awk '$ 5 \u003d\u003d "0" ( "")) END (print "; cat <datafile> | awk '$ 8 \u003d\u003d "0" ( "")) END (print "; .. etc. .. hélas ça n'a pas marché .. tous les conseils / commentaires très appréciés Steven. |
|
||||
|
merci pour la réponse rapide ..
csv les deux premières lignes de ressembler à: Code:
13426,Williams,Robyn,Robyn,20031106,0,0,20080421,0,NASP39,Casual Sport & Recreation Ass,43.24,FACI,E,FASP,SUPP,SP,NASP35,20080421,0,100,FACI,V,FASP,SUPP,SP,0,0,Ms,FT,FT,SUB 15721,Clinton,Hilary,Hilary,20041101,hs0jo,poppy@aol.com,20080601,0,HSL236,Project Manager,56.76,700,A,700,ACAD,PB,V32636,20071207,20080731,0.36,700,V,HSEN,VLEC,FL,0,0,Dr,PT,FT,SUB thanks again .. Steven Dernière édition par Yogesh Sawant; au 06.20.2008 04:54 AM.. Motif: Ajout de balises de code |
|
||||
|
.. un message d'erreur est renvoyé lorsque j'essaie d'exécuter ce soit par lui-même ou dans un script - je ne suis pas tourner à droite?
$ Cat SLsTester_DataFile.csv | awk BEGIN (FS \u003d OFS \u003d","}{ for (i \u003d 1; i <\u003d NF; i + +) (if ($ i \u003d\u003d "0") ($ i \u003d""}} 1) 'file; .. l'erreur compte tenu de la teneur suivante: -bash: erreur de syntaxe près de jeton inattendu »(« votre aide est très appréciée .. ce qui concerne, Steven |
|
||||
|
Ne pas la pipe le résultat de la commande cat sur le fichier. Cela est suffisant:
Code:
awk 'BEGIN{FS=OFS=","}{for(i=1;i<=NF;i++){if($i=="0"){$i=""}}}1' SLsTester_DataFile.csv
Code:
awk 'BEGIN{FS=OFS=","}{for(i=1;i<=NF;i++){if($i=="0"){$i=""}}}1' SLsTester_DataFile.csv > NewFile
|
|
||||
|
Si vous ne voulez modifier la valeur, si c'est une date non valide sur les spots que vous avez cités:
awk '(FS \u003d OFS \u003d","} $ 5 \u003d\u003d "0" ($ 5 \u003d "") $ 8 \u003d\u003d "0" ($ 8 \u003d "" $ 9) \u003d\u003d "0" ($ 9 \u003d "") $ 19 \u003d\u003d "0" ($ 19 \u003d "") $ 20 \u003d\u003d "0" ($ 20 \u003d "") $ 27 \u003d\u003d "0" ($ 27 \u003d "0") (print $ 0) 'file.csv Dernière édition par NYankz; au 06.20.2008 11:11 AM.. Motif: fixe |
![]() |
| Bookmarks |
| Tags |
| solaris |
| Thread Tools | Recherche sur ce Thread |
| Modes d'affichage | Rate this thread |
|
|