The UNIX and Linux Forums  


Go Back   UNIX og Linux Forums > Top Forums > Shell Programmering og Scripting
.
google unix.com



Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her.

Mere UNIX og Linux Forum Emner du måske kan finde Helpful
Tråd Thread Starter Forum Svar Last Post
Sådan finder du antal linjer i en fil somesh_p Shell Programmering og Scripting 2 12-19-2007 09:15 PM
Samlet antal linjer i en fil Raynon Shell Programmering og Scripting 9 10-04-2007 10:13 AM
skære en række linjer ud af en fil networkfre @ k Shell Programmering og Scripting 1 12-09-2005 01:46 AM
Behov ls at vise antallet af linjer i hver fil GMMike UNIX for dummyer Spørgsmål & svar 1 11-19-2004 05:53 AM
Tælle antallet af Dubler Lines i en fil crunchtime UNIX for dummyer Spørgsmål & svar 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 Søg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 05-20-2008
jisha jisha is offline
Registreret Bruger
  
 

Join Date: Jan 2008
Beliggenhed: Bangalore, Indien
Stillinger: 144
Arrow Antallet af linjer i en fil (perl-script)

Hi All,

Den nedenstående kommando giver antallet af linjer i en fil

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

Jeg vil bruge denne kommando inde i en perl script og lagre
output i en variabel. Hvordan kan jeg gøre dette?

Er deres andre metoder til at vedtage dette?

Thanks in advance
JS
  #2 (permalink)  
Old 05-20-2008
epoke era is offline Forum Advisor  
Herder af Useless Cats (On Sabbatical)
  
 

Join Date: Mar 2008
Location: / der / er / kun / bin / sh
Stillinger: 3652
Din kode allerede giver antallet af linjer til de variable $ \u003d (som er en virkelig obskure ting at gøre alligevel), bare ændrer det til enhver variabel, du virkelig ønsker.

Mere generelt, hvis du læser en fil i et array, så @ array i skalar sammenhæng vil fortælle dig, hvor mange linjer er i denne matrix. Formentlig du ønsker at gøre noget mere med sagen end blot at tælle antallet af linjer i det.
  #3 (permalink)  
Old 05-20-2008
jisha jisha is offline
Registreret Bruger
  
 

Join Date: Jan 2008
Beliggenhed: Bangalore, Indien
Stillinger: 144
Tak Era.
Faktisk jeg fik koden fra internettet, og gad ikke at finde, hvordan det fungerer (dumt af mig) ..
Jeg ønsker blot at gemme antallet af linjer i en fil i variablen.

Jeg bruger til at gøre følgende inde i et shell script (siger 1.sh)
wc-l "sample_file_name"> 1.txt
nej
no_lof_line \u003d `cut-d" "-F1 1.txt`

Jeg skal bruge de samme grundlæg her "inde i" en perl script (siger test.pl)
Jeg stadig tvivler på, at den kode, jeg sagde i den første tråd stadig arbejder inde i en perl script.
  #4 (permalink)  
Old 05-20-2008
epoke era is offline Forum Advisor  
Herder af Useless Cats (On Sabbatical)
  
 

Join Date: Mar 2008
Location: / der / er / kun / bin / sh
Stillinger: 3652
Code:
my $f = "sample_file_name";
open (F, $f) || die "Could not open $f: $!\n";
my @f = <F>;
close F;
my $lines = @f;
Øvrigt i shell script, hvis du bruger omdirigering, behøver du ikke at bruge skære at slippe af filnavnet.

Code:
no_lof_line=`wc -l <sample_file_name`
Og selvfølgelig er den midlertidige fil også ganske unødvendigt, begge veje.
  #5 (permalink)  
Old 05-20-2008
jisha jisha is offline
Registreret Bruger
  
 

Join Date: Jan 2008
Beliggenhed: Bangalore, Indien
Stillinger: 144
Thanks a lot Era

Men kan vi komprimere denne kode?
Og i perl, Dont vi har en enkelt kommando for at få linjen tæller?

JS
  #6 (permalink)  
Old 05-20-2008
epoke era is offline Forum Advisor  
Herder af Useless Cats (On Sabbatical)
  
 

Join Date: Mar 2008
Location: / der / er / kun / bin / sh
Stillinger: 3652
Med perl -le'...' filnavn du får den åbne / lukke dans gratis. I en mere kompleks script, sandsynligvis du ikke ønsker det. Hvis du har scriptet sat op til at læse den pågældende fil kan du springe den åbne / lukke, og simpelthen gøre my @ f \u003d <> gerne i din oprindelige one-liner.

Hvis du allerede har filens indhold i en variabel $ string, så du kan tælle newlines derinde med en simpel $ lines \u003d () \u003d $ string \u003d ~ m / \ n / g - Dette er en kryptisk synonym med en temmelig kompleks serie af kommandoer, som igen vil tage flere linjer i almindelig skrift i hånden, ikke-uklar form.
Closed Thread

Bogmærker

Thread Tools Søg denne tråd
Søg denne tråd:

Avanceret søgning
Display Modes Bedøm denne tråd
Bedøm denne tråd:

Udstationering Regler
Du kan ikke post nye tråde
Du kan ikke post svar
Du kan ikke post vedhæftede filer
Du kan ikke redigere dine indlæg

BB-kode er
Smilies er
[IMG] koden er
HTML-koden er Slukket
Trackbacks er
Pingbacks er
Refbacks er




Alle tidspunkter er GMT -4. Den tid er nu 01:04 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Oversættelser Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. Alle rettigheder Reserved.Ad Management ved RedTyger

Content Relevant webadresser ved vBSEO 3.2.0