The UNIX and Linux Forums  
Hej och välkommen från USA till UNIX och Linux Forum! Tack för ditt besök och gå med i vår globala gemenskapen.

Go Back   UNIX och Linux Forum > Upp Forum > Shell-programmering och Skript
.
google unix.com



Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här.

Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
Tråd Thread Starter Forum Svar Senaste Inlägg
awk, ignorera första x antal rader. trey85stang Shell-programmering och Skript 8 05-21-2008 04:44
Ignorera vissa linjer med specifika ord från Filjämförelse jakSun8 Shell-programmering och Skript 2 03-13-2008 12:11
Hur kan jag ignorera bara linjer som # i början? csaha Shell-programmering och Skript 1 01-30-2006 03:35
Gör sed ignorera linjer Scarlos Shell-programmering och Skript 2 07-21-2005 10:33
Ta bort duplikatet linjer ignorera fall hellsd UNIX for Dummies Frågor & Svar 17 12-02-2004 10:47

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ök i denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 08-18-2005
sysera sysera is offline
Registered User
  
 

Join Date: februari 2004
Inlägg: 92
Ignorera rader som börjar med #

Finns det ett standardiserat sätt att göra ett shell script läsa en fil, eller en lista, och hoppa varje rad som innehåller # i början, eller ignorerar innehållet börjar efter ett # i linje?

Jag ser att efterlikna det sätt kommentera i ett shell script normalt arbetar. Detta sätt jag kan kommentera mina textfiler och listor mitt manus process och ignorera kommentar linjer.

Tack grabbar.
  #2 (permalänk)  
Old 08-18-2005
hadarot hadarot is offline
Registered User
  
 

Join Date: Jul 2005
Inlägg: 33
Om du vill göra bara ett par saker med produktionen, filter du källfilen i en rörledning:
Kod:
grep -v '^[[:space:]]*#' /path/to/your/file | your_commands
Om du vill göra stora saker med din kommentar-strippad filen, spara den avskalade filen i en temp-fil, och använd använd temp-filen för resten av förfarandet:
Kod:
grep -v '^[[:space:]]*#' /path/to/your/file  >/tmp/stripped_source
Observera att jag använder ^ [[: space:]] * i början av det reguljära uttrycket eftersom rader som är helt kommentarer kan fortfarande innehålla ledande blanksteg. Om du vill ta bort tomma rader också, do
Kod:
 egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' /path/to/file >/tmp/stripped_file

Senast redigerad av hadarot; 08-18-2005 at 08:53..
  #3 (permalänk)  
Old 08-18-2005
Ygor's Avatar
Ygor Ygor is offline Forum Staff  
Moderator
  
 

Join Date: oktober 2003
Ort: -31.96,115.84
Inlägg: 1.409
Prova ...
Kod:
$ cat file1
#line1
  #line2
line#3
line4

$ sed '/^ *#/d;s/#.*//' file1
line
line4
  #4 (permalänk)  
Old 08-22-2005
sysera sysera is offline
Registered User
  
 

Join Date: februari 2004
Inlägg: 92
Citat:
Ursprungligen postat av Ygor
Prova ...
Kod:
$ cat file1
#line1
  #line2
line#3
line4

$ sed '/^ *#/d;s/#.*//' file1
line
line4
Efter en del tester jag gick med denna metod. Tack till er båda.
  #5 (permalänk)  
Old 08-23-2005
Bakunin bakunin is offline Forum Staff  
Bughunter extraordinär
  
 

Join Date: maj 2005
Ort: I det vänstra byte av / dev / kmem
Inlägg: 1.628
Om du vill att ditt manus agera som ksh själv (ignorera den del av en rad efter en "#" men använda den del innan den) kan du göra följande (ersätt "<spc>" med en bokstavlig plats, "<tab > "med en flik tecken):

Kod:
script

sed 's/#.*$/;s/^[<spc><tab>]*//;s/[<spc><tab>]*$//;/^$/d' file

content of file
# this is a line with comments
   # this too, but starting with blanks
command 1        # this line contains an inline comment

command 2 "#"   # this too, but my script would be confused

result
command 1
command 2 "
Tyvärr misslyckas skriptet på den andra raden, men med undantag för sådana delikatesser det fungerar.

Bakunin
Closed Thread

Komihåglista

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 08:43.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0