The UNIX and Linux Forums  
Hej og Velkommen fra USA til UNIX og Linux Forums! Tak for dit besøg og deltager i vores globale samfund.

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
Script til at indfange nye linjer i en fil og kopiere den til ny fil fara_aris Shell Programmering og Scripting 0 05-27-2008 11:11 PM
indfange ping til en fil MizzGail Sun Solaris 3 09-20-2007 10:31 AM
Capture Værdi fra fil kris01752 UNIX for Advanced & Ekspertsøgning Brugere 1 08-28-2006 11:50 PM
Capture kommandoen kører i logfil ahmedwaseem2000 Shell Programmering og Scripting 4 08-09-2006 02:06 PM
indfange nohup logfil mgirinath Shell Programmering og Scripting 2 04-24-2006 05:51 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-25-2007
Mandab Mandab is offline
Registreret Bruger
  
 

Join Date: Apr 2007
Stillinger: 22
indfange filnavnet

Jeg forsøger at fange den filnavn (som ikke er af fast længde) og sætte det i en variabel. Det er arbejder i unix henviser til, når jeg kører det samme manuskript i Informatica er det ikke giver mig den ønskede effekt. Men når jeg kommentere indstillingen (finde filnavnet), så det fungerer fint. Det kan også fordi jeg bruger awk. Er der nogen anden måde (undtagen ved hjælp awk) for at finde filnavnet? Filnavn vil være i anden linje i filen med 2 andre poster filesize numerisk (10) og registrere regne numerisk (8).

Her er min kode:
#! / bin / ksh

eval $ (awk 'NR \u003d\u003d 2 (
printf "header_fname \u003d \"% s \ "\ n", substr ($ 0,1, længde-18) # # filnavn
) '$ 1)

echo "$ header_fname"

Prøve-fil:
id_xyz20070523085554004
abcdefgh.csv000000324100000036
  #2 (permalink)  
Old 05-25-2007
aigles's Avatar
aigles aigles is offline Forum Advisor  
Registreret Bruger
  
 

Join Date: Apr 2004
Beliggenhed: Bordeaux, Frankrig
Indlæg: 1.423
Code:
header_fname=`awk 'NR==2 { print substr($0,1,length-18) }' $1`
echo $header_fname
eller
Code:
#!/bin/ksh
{
  read line
  read line
} < $1
header_fname=${line%??????????????????}
echo $header_fname
Jean-Pierre.
  #3 (permalink)  
Old 05-25-2007
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell programmør, forfatter
  
 

Join Date: Mar 2007
Beliggenhed: Toronto, Canada
Stillinger: 2361
Citat:
Oprindeligt Indsendt af Mandab
Jeg forsøger at fange den filnavn (som ikke er af fast længde) og sætte det i en variabel. Det er arbejder i unix henviser til, når jeg kører det samme manuskript i Informatica er det ikke giver mig den ønskede effekt. Men når jeg kommentere indstillingen (finde filnavnet), så det fungerer fint. Det kan også fordi jeg bruger awk. Er der nogen anden måde (undtagen ved hjælp awk) for at finde filnavnet? Filnavn vil være i anden linje i filen med 2 andre poster filesize numerisk (10) og registrere regne numerisk (8).

Her er min kode:
#! / bin / ksh

eval $ (awk 'NR \u003d\u003d 2 (
printf "header_fname \u003d \"% s \ "\ n", substr ($ 0,1, længde-18) # # filnavn
) '$ 1)

echo "$ header_fname"

Prøve-fil:
id_xyz20070523085554004
abcdefgh.csv000000324100000036

Under alle BOURNE-type Shell (bash, ksh, sh, osv.):

Code:
{
 read line
 IFS=0123456789 read header_fname junk
} < "$FILE"
echo "$header_fname"
  #4 (permalink)  
Old 05-26-2007
aigles's Avatar
aigles aigles is offline Forum Advisor  
Registreret Bruger
  
 

Join Date: Apr 2004
Beliggenhed: Bordeaux, Frankrig
Indlæg: 1.423
Citat:
Oprindeligt Indsendt af cfajohnson
Under alle BOURNE-type Shell (bash, ksh, sh, osv.):

Code:
{
 read line
 IFS=0123456789 read header_fname junk
} < "$FILE"
echo "$header_fname"
Fungerer ikke, hvis filnavnet indeholder en numerisk tegn.

Jean-Pierre.
  #5 (permalink)  
Old 05-29-2007
Mandab Mandab is offline
Registreret Bruger
  
 

Join Date: Apr 2007
Stillinger: 22
Tak Aigles, er det fungerer perfekt.
Closed Thread

Bogmærker

Tags
bash, bash eval, eval

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 11:42 PM.


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