• 1
  • 2
2009-08-31, 21:08
  #13
Medlem
Citat:
Ursprungligen postat av e5150
Det har väl redan sagts i tråden:

grep -v "ett specifikt ord" fil.txt > temporär_filjävel.txt
mv temporär_filjävel.txt fil.txt

Hur gör man istället för att lägga till en rad till utdatan med awk eller sed?

awk '/$nummer/ {print}' utdata skriver bara det inlästa till skärmen.
Citera
2009-08-31, 21:12
  #14
Medlem
2_Thumbs_Ups avatar
Citat:
Ursprungligen postat av e5150
Det har väl redan sagts i tråden:

grep -v "ett specifikt ord" fil.txt > temporär_filjävel.txt
mv temporär_filjävel.txt fil.txt

meh sorry jag är trött.. och korkad
Citera
2009-08-31, 21:33
  #15
Bannlyst
Citat:
Ursprungligen postat av Drakjägarn
Hur gör man istället för att lägga till en rad till utdatan med awk eller sed?

awk '/$nummer/ {print}' utdata skriver bara det inlästa till skärmen.

Jag vet inte om jag förstår din fråga korrekt.
Vill du bara byta ut ett nummer/ord i en rad?

sed -i 's/dettavilljagbytaut/dettaärmittnyavärde/g' indata.txt
eller om du väljer att ha en variabel, då blir det lite annorlunda...
sed -i "s/$minvariabel/mittnyavärde/g" indata.txt

Som jag sa tidigare, så är awk lite krångligare och förstå, men jag drar en rad, så du ser.

awk '{gsub(/dba/,"lala");print > FILENAME}' /etc/passwd
Vad den gör är att den letar upp "dba" oh byter ut det mot "lala" och sparar det i filen.
Nu var detta ett dåligt exempel eftersom endast root har skrivrättigheter på /etc/passwd, men du fattar nog.
Citera
2009-08-31, 21:34
  #16
Medlem
e5150s avatar
Citat:
Ursprungligen postat av Drakjägarn
Hur gör man istället för att lägga till en rad till utdatan med awk eller sed?

awk '/$nummer/ {print}' utdata skriver bara det inlästa till skärmen.

echo $nummer | awk '{print}' >> utdata.txt

eller

echo $nummer | sed 's/a/a' >> utdata.txt

eller så skiter man bara i sed/awk

echo $nummer >> utdata.txt
Citera
2009-08-31, 21:40
  #17
Medlem
Citat:
Ursprungligen postat av swedala
Jag vet inte om jag förstår din fråga korrekt.
Vill du bara byta ut ett nummer/ord i en rad?

sed -i 's/dettavilljagbytaut/dettaärmittnyavärde/g' indata.txt
eller om du väljer att ha en variabel, då blir det lite annorlunda...
sed -i "s/$minvariabel/mittnyavärde/g" indata.txt

Som jag sa tidigare, så är awk lite krångligare och förstå, men jag drar en rad, så du ser.

awk '{gsub(/dba/,"lala");print > FILENAME}' /etc/passwd
Vad den gör är att den letar upp "dba" oh byter ut det mot "lala" och sparar det i filen.
Nu var detta ett dåligt exempel eftersom endast root har skrivrättigheter på /etc/passwd, men du fattar nog.

Snarare bara lägga till ett telefonnummer till utdata.txt

Använder man den awk kommandot i mitt tidigare inlägg, skrives inte numret till utdata.txt.
Citera
2009-08-31, 21:47
  #18
Medlem
Citat:
Ursprungligen postat av e5150
echo $nummer >> utdata.txt

Omg, hur kunde man missa det
Citera
2009-08-31, 21:52
  #19
Bannlyst
Citat:
Ursprungligen postat av Drakjägarn
Omg, hur kunde man missa det

Haha

Jag trodde det var något helt annat du var ute efter.
Citera
  • 1
  • 2

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in