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
Konverter Variabel fil til faste fil. abhi9845 Shell Programmering og Scripting 9 09-24-2008 09:07 AM
Konverter Variabel fil til faste fil. abhi9845 UNIX for dummyer Spørgsmål & svar 1 09-15-2008 08:07 AM
variabel i dos batchfil chssastry Windows & DOS: Issues & Drøftelser 6 08-29-2008 03:38 AM
variabel i filen pppswing Shell Programmering og Scripting 2 07-02-2008 05:55 AM
hvordan man lægger en variabel fra 2. fil til 1. fil lo tan Shell Programmering og Scripting 5 06-03-2008 03:58 AM

Reply
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 Karakter: Thread Rating: 1 votes, 5.00 average. Display Modes
  #1 (permalink)  
Old 05-13-2009
Mr.Lauren Mr.Lauren is offline
Registreret Bruger
  
 

Join Date: Apr 2009
Stillinger: 3
sed-i'7 c \ $ variable 'file ....(?!@#$%^&*!)

Jeg har prøvet alt, hvad jeg kan tænke på at få sed at ændre linje N i en fil med indholdet af en variabel. Jeg har Googled internettet, og jeg finde masser af mennesker, som fortæller, hvordan du bruger variabler med "Stedfortræder" kommando, men ingen fortæller, hvordan du bruger variabler med "Change" kommando.

Jeg har overvejet muligheden for at bruge "Stedfortræder" kommando med et wild card til eksisterende tekst, men min søgning på internettet fortæller mig SED ikke har wild cards i sit repertoire, så det er svært! Der skal være en bedre måde.

Som jeg bemærkede i emnet, er de grundlæggende form brugte jeg er (hvor N er en linje nummer):
Code:
sed -i 'N c\$variable' FILE
Er dette muligt, eller er der en anden kommando, som vil gøre det? Jeg arbejder i Bash scripts.

Tak!
  #2 (permalink)  
Old 05-13-2009
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: Feb 2007
Indlæg: 4.312
Brug dobbelte anførselstegn, enkelt anførselstegn forhindre tanken at udvide den variable:

Code:
sed -i "N c $variable" FILE
  #3 (permalink)  
Old 05-13-2009
devtakh devtakh is offline
Registreret Bruger
  
 

Join Date: oktober 2007
Beliggenhed: Bangalore
Posts: 514
Code:
sed  "N c $variable" FILE
  #4 (permalink)  
Old 05-14-2009
Mr.Lauren Mr.Lauren is offline
Registreret Bruger
  
 

Join Date: Apr 2009
Stillinger: 3
Ja! Det virker! Tak Franklin (og devtakh)! Hvad en forholdsregler - bedre end en julegave!

Dette er virkelig en overraskelse for mig, fordi jeg har fået den hårde citerer konfiguration var "støbt i beton". Jeg må indrømme, dog, at mine konklusioner kom fra læser forskellige bemærkninger under mit Internet søgning på "sed". Manualen selv er temmelig vagt om dette emne. Nu, i bakspejlet kan jeg se, at ved udgangen af håndbogen er der henvisning til det sed hjemmeside, hvor problemet med variabler er drøftet indgående! Hvis jeg havde set, at i første omgang, vil jeg sandsynligvis kunne have regnet det ud, og ikke spilde den plads på forummet.

Men du ikke engang bruge "\"! At jeg ikke ville have indgået fra manual. Jeg gætter det viser, hvor mange måder der er at gøre tingene på. Jeg vil gå tilbage til sed websted og gøre nogle mere undersøgelse. Jeg er sikker taknemmelige for den funktion, at "sed"Giver.

Af den måde, var jeg nogensinde også store øjne, da jeg fandt ud af om Zenity, efter at have set det referencestandarden på nettet, og derefter opdagede det allerede var installeret! Forbløffende!

Tak igen meget.
Lauren.
  #5 (permalink)  
Old 07-03-2009
jansonx jansonx is offline
Registreret Bruger
  
 

Join Date: Jun 2009
Stillinger: 1
Question Det lader ikke til at arbejde godt i Solaris

Først-i option ikke blev støttet, så de ovennævnte sed -I "N c $ var" datafile er ikke bærbare.
Andet, selv om den-i valgmulighed er ikke givet, ved hjælp af sed -I "N c [\] $ var" datafile, stadig ikke kan arbejde.
Den løsning kunne være,
sed "N c \ \
$ var "datafile
som jeg testet under Solaris.

John, Hong

ps
sed "N s /.*/$ var /" datafile også værker ud.

Sidst redigeret af jansonx; 07-03-2009 på 07:01 AM.. Årsag: Jeg fik det svar
Reply

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 05:37 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