Kezdőoldal » Számítástechnika » Programozás » Shell script grep parancs...

Shell script grep parancs változóval való használata, miért nem működik?

Figyelt kérdés

Sziasztok! Az alábbi kis problémám lenne a grep utasítással:

pl:

grep -i -w $i miért nem jó, de ha így használom akkor meg működik:

grep -i -w alma

Hogy lehet változóval működtetni?

Köszönöm szépen előre is a segítséget!



2016. okt. 31. 15:38
 1/6 anonim ***** válasza:

Ennek működnie kell. Az $i után van még file név, vagy pip-olod bele az inputot? Az probléma lehet, ha van szóköz a változóban.


i="alma"

Akkor

grep -i -w $i az ugyan az, mintha azt mondanád, hogy grep -i -w alma. Ha mégis kétségeid vannak, akkor echo grep -i -w $i

2016. okt. 31. 23:21
Hasznos számodra ez a válasz?
 2/6 A kérdező kommentje:

Igazából ez lenne a kód de valami miatt hibára fut:

#!/bin/bash

#

echo "Add meg a honapot"

read $i

if [ $# -eq 0 ]

then

echo "Nem adtal argumentumot"

exit

else

file=$1

if [ -f $file ]

then

cat $file | while read row

do

echo $row | grep -i -w $i

done

else

echo "File not found"

fi

fi

2016. nov. 1. 08:35
 3/6 anonim ***** válasza:

A "read $i " nem jo. De osszessegeben a scripted nem valami jo. Teljesen felesleges a file-t loopban beolvasni, amikor a grep pont azt csinalja. De ha pipe-olsz, akkor is lehet cat $file | grep pattern.


Egy masik megjegyzes, hogy nem szerencses keverni a magyar es angol kifejezeseket egy programon bellul, de meg dokumentacioban sem.. En midnenhol, mindig csak angolt hasznalok.


Ha tesztelsz valamit, es a feltetel teljesulese eseten kilepsz, akkor felesleges az else statement, mert minden tovabbi utasitas ugyis csak akkor fog vegrehajtodni, ha a statement hamis.


Itt a script, ahogy en megoldanam: http://pastebin {pont} com/kXrUwWEQ

2016. nov. 1. 14:43
Hasznos számodra ez a válasz?
 4/6 A kérdező kommentje:
Pedig ezt az egyetemi tanárom diktálta le:d, nagyon szépen köszönöm, neki is látok megoldani úgy:D
2016. nov. 1. 17:49
 5/6 A kérdező kommentje:
Azta a te kódod sokkal jobban átlátható, és nekem legalább is jobban is értelmezhető, jó h kiírtam mindig tanulok valami újat.
2016. nov. 1. 17:54
 6/6 anonim ***** válasza:
Örülök, hogy tetszik a kód! :D Azért átláthatóbb, mert nincsenek benne egymásba ágyazott if-ek, és a for loop-ot is megspóroltam, így tényleg nagyon könnyen olvasható.
2016. nov. 2. 00:12
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!