![]() |
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 |
| De programmation et de script Shell Posez vos questions à propos de KSH, CSH, SH, BASH, PERL, PHP, SED, awk et d'autres scripts shell et les langages de script shell ici. |
Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
|
||||
| Fil | Thread Starter | Forum | Réponses | Last Post |
| Newbie aider à New Line & Blank Line | kthatch | UNIX pour les nuls Questions et réponses | 5 | 01-23-2009 04:19 PM |
| sed: supprimer regex ligne et la ligne suivante si vide | one71 | De programmation et de script Shell | 2 | 09-18-2008 06:53 AM |
| Comment obtenir la dernière ligne non vide? | tqlam | De programmation et de script Shell | 6 | 01-17-2008 07:13 PM |
| Ligne blanche? | varungupta | UNIX for Advanced & Expert Users | 2 | 09-10-2007 01:52 PM |
| cant trouver la commande qui renvoie ligne | jeffersno1 | UNIX pour les nuls Questions et réponses | 2 | 11-15-2001 04:14 PM |
![]() |
|
|
LinkBack | Thread Tools | Recherche sur ce Thread | Rate Thread | Modes d'affichage |
|
|
|
||||
|
Trouver la ligne de vide avant de
Bonjour,
J'ai deux questions. Tout d'abord, voici le fichier de la façon dont elle est maintenant. someword someword: 1 nouveau-mot nouveau mot-abcd someword someword: 10 nouveau-mot nouveau mot-abcd thisis whatIneed: 3 someword someword: 5 nouveau-mot nouveau mot-abcd J'ai besoin d'obtenir la ligne avant le 2 flans et le déplacer vers un autre fichier. J'ai essayé d'utiliser sed, Mais j'ai des messages d'erreur. Aussi, il mai être zéro, un ou plusieurs exemples de cela dans le fichier. Je devrais probablement mentionner également que cela fait partie d'un plus grand perl script sur lequel je travaille. J'ai tout fait, le fichier ci-dessus est générée par le script. J'ai aussi tout ce qu'il complète ci-dessous, mais je suis complètement bloquée à ce point. Toute aide soit serait appréciée. Dernière édition par ddrew78; au 03.18.2009 07:43 PM.. |
|
||||
|
Voici le mien, laid mais devrait faire l'affaire
(non testé) Code:
awk 'BEGIN{i=0}
{ content[NR]=$0; if (($0=="")) {b[i]=NR;i++} j++;}
END
{
for (x=0;x<=b[0];x++)
{print content[x] > "file1" } for (x=b[1];x<=j; x++) { print content[x] > "file2"}
}' /var/tmp/file
|
|
||||
|
Re: Trouver la ligne de vide avant de
été cerise,
voici ce que je me suis retrouvé dans mon script: #! / usr / bin /perl open $ fh ,"<"," mon_fichier "; ouvert ,">>"," mynewfile $ out "; undef $ /; $ str \u003d <$ fh>; print $ out split (/ \ n $ ^ \ n $ ^ \ n / s, $ str, 2) [0]; J'ai reçu le message d'erreur ci-dessous. Des idées? J'apprécie l'aide. ansipre2 erreur de syntaxe à la ligne 7, près de ") [" Exécution de ansipre2 avorté en raison d'erreurs de compilation. |
|
||||
|
Re: Trouver la ligne de vide avant de
Citation:
Merci pour la réponse. Malheureusement, je suis nouveau sur ce point et ne peut pas savoir comment mettre en œuvre la présente dans mon script. Vous trouverez ci-dessous les deux dernières lignes du script pour obtenir le fichier ci-dessus, j'ai eu. système "dos2unix ansi3> ansi7"; système mv ansi7 ansi3 "; Merci encore pour toute aide. |
|
||||
|
Merci à tous ceux qui m'ont aidé sur ce point. Après beaucoup de douleur, j'ai décidé d'aller à une autre voie et, au lieu de répéter la chaîne en annexe à sa ligne précédente. Certes, qui a donné lieu à quelques lignes de code, mais ce que le diable. Just an FYI, ci-dessous est le code qui a fini par me donner le sens que je cherche était à l'origine.
open (FILE7, "> file7"); open (MYINPUTFILE, "fichier3"); while (<MYINPUTFILE>) ( chomp; my $ someword \u003d ""; my $ new-word \u003d ""; if (/ ^ someword /) ($ someword \u003d $ _; while (<MYINPUTFILE>) (chomp; if (/ ^ nouveau mot /) ( FILE7 print "$ someword $ _"; FILE7 print "\ n";) dernier; ) ) ) système mv file7 fichier3 "; système "dos2unix fichier3> file7"; système mv file7 fichier3 "; système de "chat fichier3 | cut-d" "-f1-2>> file0 '; système de tri-n file0> fichier1 "; système mv fichier1 file0 "; système de «tri file0 | uniq-u> fichier1"; système mv fichier1 file0 "; |
![]() |
| Bookmarks |
| Thread Tools | Recherche sur ce Thread |
| Modes d'affichage | Rate this thread |
|
|