The UNIX and Linux Forums  


Go Back   De Unix-en Linux Forum > Top Forums > Programmeren en Shell Scripting
.
google unix.com



Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier.

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
Hoe vindt u het aantal lijnen in een bestand somesh_p Programmeren en Shell Scripting 2 12-19-2007 09:15 PM
totaal aantal regels in een bestand Raynon Programmeren en Shell Scripting 9 10-04-2007 10:13
Knip een aantal regels uit een bestand networkfre @ k Programmeren en Shell Scripting 1 12-09-2005 01:46
Need Is die het aantal lijnen in elk bestand GMMike UNIX voor Dummies Questions & Answers 1 11-19-2004 05:53
Het tellen van Duplicate Lines in een bestand crunchtime UNIX voor Dummies Questions & Answers 2 07-04-2003 02:24 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 05-20-2008
jisha jisha is offline
Geregistreerde gebruiker
  
 

Join Date: Jan 2008
Locatie: Bangalore, India
Posts: 144
Arrow Aantal regels in een bestand (perl script)

Hi All,

De volgende commando geeft het aantal regels in een bestand

perl -le 'print $\u003d\u003d()\u003d<>' <file_name>

Ik wil dit commando te gebruiken binnen een perl script en bewaar de
output in een variabele. Hoe kan ik dit doen?

Is hun andere methoden om dit vast te stellen?

Thanks in advance
JS
  #2 (permalink)  
Old 05-20-2008
tijdperk era is offline Forum Advisor  
Herder van Nutteloze Cats (On Sabbatical)
  
 

Join Datum: maart 2008
Locatie: / er / is / alleen / bin / sh
Berichten: 3652
Uw code kent reeds het aantal lijnen aan de variabele $ \u003d (dat is echt een duister ding toch doen); gewoon veranderen aan wat variabele je echt wilt.

Meer in het algemeen, als je leest een bestand in een array, dan @ array in scalaire context zal u vertellen hoeveel lijnen zijn in die array. Vermoedelijk u iets meer te doen met het bestand dan alleen het aantal regels tellen in.
  #3 (permalink)  
Old 05-20-2008
jisha jisha is offline
Geregistreerde gebruiker
  
 

Join Date: Jan 2008
Locatie: Bangalore, India
Posts: 144
Bedankt Era.
Eigenlijk kreeg ik de code van het internet en niet de moeite te vinden hoe het werkt (dom van me) ..
Ik wil alleen het aantal regels te slaan in een bestand in de variabele.

Ik gebruiken om het volgende te doen binnen een shell script (zeg 1.sh)
wc-l "sample_file_name"> 1.txt
nee
no_lof_line \u003d `cut-d" "-f1 1.txt"

Ik moet dezelfde funda hier gebruik "binnen" een perl script (zeg test.pl)
Ik nog steeds twijfel of de code zei ik in de eerste draad werkt nog steeds binnen een perl script.
  #4 (permalink)  
Old 05-20-2008
tijdperk era is offline Forum Advisor  
Herder van Nutteloze Cats (On Sabbatical)
  
 

Join Datum: maart 2008
Locatie: / er / is / alleen / bin / sh
Berichten: 3652

Code:
my $f = "sample_file_name";
open (F, $f) || die "Could not open $f: $!\n";
my @f = <F>;
close F;
my $lines = @f;

Overigens, in de shell script, als je omleiding gebruikt, hoeft u niet te gebruiken snijden om zich te ontdoen van de bestandsnaam.


Code:
no_lof_line=`wc -l <sample_file_name`

En natuurlijk, het tijdelijke bestand is ook helemaal niet nodig, hetzij manier.
  #5 (permalink)  
Old 05-20-2008
jisha jisha is offline
Geregistreerde gebruiker
  
 

Join Date: Jan 2008
Locatie: Bangalore, India
Posts: 144
Thanks a lot Era,

Maar kunnen we comprimeren deze code?
En in perl, Dont we hebben een opdracht om de lijn rekenen krijgen?

JS
  #6 (permalink)  
Old 05-20-2008
tijdperk era is offline Forum Advisor  
Herder van Nutteloze Cats (On Sabbatical)
  
 

Join Datum: maart 2008
Locatie: / er / is / alleen / bin / sh
Berichten: 3652
Met perl -le'...' bestandsnaam je de open / dicht dans voor gratis. In een meer complexe script, je waarschijnlijk niet wilt dat. Als u het script ingesteld om het bestand in kwestie te lezen dan kun je overslaan open / dicht, en gewoon doen my @ f \u003d <> zoals in de originele one-liner.

Als u al de inhoud van het bestand hebben in een variabele $ string, dan kunt u rekenen de newlines daar met een eenvoudig $ lines \u003d () \u003d $ string \u003d ~ m / \ n / g - Dit is een cryptische afkorting voor een vrij complexe reeks van commando's die weer zou nemen meerdere regels in handschrift, unobfuscated vorm.
Closed Thread

Bladwijzers

Thread Tools Zoeken in deze Thread
Zoeken in deze Thread:

Uitgebreid zoeken
Display Modes Beoordeel deze draad
Beoordeel deze draad:

Posting Regels
Jij mag niet Post Nieuwe threads
Jij mag niet na antwoorden
Jij mag niet post attachments
Jij mag niet bewerk uw berichten

BB code is Aan
Smilies zijn Aan
[IMG] code Aan
HTML-code is Uit
Trackbacks zijn Aan
Pingbacks zijn Aan
Refbacks zijn Aan




Alle tijden zijn GMT -4. Het is nu 11:54 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Vertalingen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
De Unix-en Linux Forums Copyright © 1993-2009. Alle rechten Reserved.Ad Beheer door RedTyger

Content Relevante URL's door vBSEO 3.2.0