The UNIX and Linux Forums  
Hello and Welcome-tól az Egyesült Államokat, hogy az UNIX és Linux Forums? Köszönjük, hogy meglátogatta és csatlakozik Globális Közösség.

Go Back   A UNIX és Linux Forums > Top Fórumok > Shell programozás és Scripting
.
google unix.com



Shell programozás és Scripting Post kérdések KSH, CSH, SH, Bash, Perl, PHP, SED, AWK ÉS EGYÉB shell szkriptek és shell script nyelvek itt.

Több, UNIX és Linux fórum témák Ön által talált Hasznos
Szál Thread Starter Fórum Válaszok Utolsó hozzászólás
ötvözi a mezőket két szöveges mezők ócskaság Shell programozás és Scripting 3 01-16-2008 11:27 AM
cut: kap egy vagy két területen maxvirrozeito Shell programozás és Scripting 3 12-17-2007 11:58 AM
Vágás Utolsó 3 területek Bourne Shell programozás és Scripting 4 01-11-2007 05:17 AM
Utolsó területeken Khoomfire A UNIX a fejlett és szakértői Felhasználók 3 04-13-2006 05:03 PM
hogy hogyan vágott mező rajan_ka1 Shell programozás és Scripting 1 12-29-2005 05:55 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Téma eszközök Keresés a téma Rate Thread Megjelenítési módok
  #1 (permalink)  
Old 11-18-2008
ddurden7 ddurden7 is offline
Regisztrált felhasználó
  
 

Join Date: Oct 2008
Hozzászólások: 5
Pontosítva és helyettesítő területeket awk

# cat BATCH007.TXT
01,661060052,061000104,081118,0915,07,80,1,2 /
99,,, 2 /

Nekem van ez a fájl neve BATCH007.TXT. Próbálom megváltoztatni területeken a 2. és 3. sorban 2 van nullák. Valahogy így:
01,661060052,061000104,081118,0915,07,80,1,2 /
99,0,0,2 /

Tudom használni ezeket a parancsokat nyomtatási területek meghatározását, amely vissza üres értéket, úgy, ahogyan kell:
BATCH007.TXT head -2 | tail-1l | awk '(FS \u003d","} (print $ 2)'
BATCH007.TXT head -2 | tail-1l | awk '(FS \u003d","} (print $ 3)'

Azt hiszem, közel. Hozzáadtam egy gusb, hogy a fenti parancsot, de a kimenet helytelen:

BATCH007.TXT head -2 | tail-1l | awk-F "," '(gsub ($ 2, "0");) print' BATCH007.TXT> D.new

$ cat D.new
01,661060052,0,081118,0915,07,80,1,2 /
09090,0,0,020 / 0

Csinál akárki volna akármi javaslatok?
  #2 (permalink)  
Old 11-18-2008
insamniac insamniac is offline
Regisztrált felhasználó
  
 

Join Date: Aug 2006
Hozzászólások: 14
úgy néz ki, mint a házi feladat számomra
  #3 (permalink)  
Old 11-19-2008
Christoph Spohr Christoph Spohr is offline
Regisztrált felhasználó
  
 

Join Date: Sep 2008
Posts: 205
Szia,

Nem tudom pontosan, mit akar csinálni, de ha csak szeretnénk változtatni 2. sorban közületek fájl, ezt kell elég:

Kód:
sed "/^99/s/,,,/,0,0,/g" file
Ami azt jelenti: menj a vonalon kezdődő 99. és ezen a vonalon helyettesítő kommas három sorban a, 0,0,

HTH Chris
Closed Thread

Könyvjelzõk

Téma eszközök Keresés a téma
Keresés a téma:

Részletes keresés
Megjelenítési módok Rate this thread
Rate this thread:

Posting szabályzat
Ön nem post new threads
Ön nem post válaszok
Ön nem post Csatolmányok
Ön nem szerkeszteni az üzeneteidet

BB kód van Be
Smilies vannak Be
[IMG] kód Be
HTML kód Ki
Trackbacks vannak Be
Pingbacks vannak Be
Refbacks vannak Be




Minden idő GMT -4. Az idő most 02:55 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Nyelvre lefordítva Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
A UNIX és Linux Fórum Tartalom Copyright © 1993-2009. Minden jog Reserved.Ad menedzsment RedTyger

Content Relevant URLs by vBSEO 3.2.0