if [ $2 ='--help' ];then
az = utan tegy egy szokozt

if [ $2 ='--help' ];then
az = utan tegy egy szokozt

Segitségre elnne szükségem sürgős !
Készítsen shell scriptet, mely egytől a paraméterként megadott pozitív egész számig elszámol egyesével, úgy, hogy minden sorban megjelenít egy egyesével növekvő számsorozatot, addig, ahányadik számnál tart a számlálás. Például '3' paraméter esetén a kimeneten az első sor: '1', a második sor '12', a harmadik sor pedig '123' lesz!
vki meg tudná nkm csinálni?
ez parameterellenorzest nem vegez, de megcsinalja amit kell 
#!/bin/sh
for i in `seq 1 $1`; do
A=""
for j in `seq 1 $i`; do
A="$A$j"
done
echo $A
done
"egy felugró ablak kiírja, hogy pop-up blockert installáltam"
van egy lista, amiben mindössze néhány féle szó van, de azok többször. ezt kellene megszámolni, hogy ki hányszor, és sorba állítani őket.
megszámolni én is meg tudom (grep szó file | wc -l), csak azt nem tudom hirtelen, hogy hogyan lehet megcsinálni, hogy maga a szkript keressen rá az egyes szavakra (sort | uniq ad egy listát).
for i in $(sort lista.txt | uniq) do
ez valszeg benne lesz (ciklust sose bírtam helyesen írni...)
grep $i lista.txt | wc -l
ez fogja adni a számot... csak ezt is valami változóba, vagy egyből egy file-ba/kimenetre kellene írni, a $i elé.
erre kérnék valami kultúrmegoldást.
ez olyan, mint a görögtűz, csak görögvíz - Loretto

Hát a legegyszerűbb talán:
cat file | sort | uniq -c
Állatkerti képek: http://zoopic.ya.hu
nem értelek, a uniqnak van olyan kapcsolója, hogy meg is számolja az előfordulások számát...
man uniq:
-c, --count
prefix lines by the number of occurrences
a PH! kedvenc ISP-trollja (C) Tyberius | http://itcafe.hu/tema/a_nagy_openwrt_topic/friss.html
fölöslegesen forkolt cat-ért más fórumokon golyó általi halál jár 
sort file | uniq -c 
a PH! kedvenc ISP-trollja (C) Tyberius | http://itcafe.hu/tema/a_nagy_openwrt_topic/friss.html
sot: cat file | sort | uniq -c | sort -n
(Szerintem a kezdo cat altal adott strukturalis tisztasag boven ellensulyozza azt, hogy vmi egeszen minimalis eroforrast lefoglal az inditasa.)
[ Szerkesztve ]
Falsus in uno, falsus in omnibus.

Szerencsére nem más fórumon vagyunk. Itt meg nagyon megfelel ez is: alig hiszem, hogy egy mai szerveren észre lehetne venni a különbséget. Ráadásul néha elborul az agyam és 10-15 "|" is van egy parancsban, ott meg már aligha számít egy ide-oda :-)
Állatkerti képek: http://zoopic.ya.hu
ebben az esetben valószínűleg nem, de lehet olyan, amikor igen...
a PH! kedvenc ISP-trollja (C) Tyberius | http://itcafe.hu/tema/a_nagy_openwrt_topic/friss.html

Tudsz egy példát mondani, amikor ez számít?
Sok shell scriptet írok és töredelmesen bevallom, hogy szinte kivétel nélkül egy "cat filename" utasítással kezdődnek :-)
Állatkerti képek: http://zoopic.ya.hu
köszi mindenkinek, ez lett a megoldás:
cut -d \] -f2 file.txt | sort | uniq -c | sort -nr
néha nem árt a man-okat megnézni, mert kiderül, hogy egy kínszenvedve összetákolt szkript egy kapcsolóval helyettesíthető 
ez olyan, mint a görögtűz, csak görögvíz - Loretto
például ha jól láttam, amikor a most nevű pagerrel nagy fájlt nézel, akkor ha szabvány bemeneten kapja, be kell töltenie a ramba, ha meg fájldeszktiptorként, akkor meg mmap-peli.
a "ha jól láttam"-on van a hangsúly.
a PH! kedvenc ISP-trollja (C) Tyberius | http://itcafe.hu/tema/a_nagy_openwrt_topic/friss.html

Ez mondjuk logikus lenne, de nekem legfeljebb az utolsó elem lehet egy pager (én a less-t használom) az első aligha (hacsak nem hagyom ott lustaságból a "cat filename" helyett a "less filename"-et)
És itt sem az egyel kevesebb fork miatt lenne kevesebb az erőforrás igény.
Állatkerti képek: http://zoopic.ya.hu
Vannak dolgok, amik most még csak stilisztikai hibának tűnnek, később meg baj lehet belőle, ezért néha nem árt megszokni, hogy egyes, szintaktikusan helyes dolgot mégsem használ az ember.
Én pl. nem szeretem a fordított aposztrófot, a /bin/sh-t az első sorban, és ezt. Meg még lehet, hogy van más is, ami nem kedvenc 
a PH! kedvenc ISP-trollja (C) Tyberius | http://itcafe.hu/tema/a_nagy_openwrt_topic/friss.html
a forditott aposztrof elvileg mar obsolete valoban 
de mi a baj a shell feltuntetesevel az elso sorban? az elvileg kotelezo ha scriptkent akarod futtatni
"egy felugró ablak kiírja, hogy pop-up blockert installáltam"
Nem azzal van a gond, hogy megadod, melyik shellel kell futtatni, hanem azzal, hogy valójában nem adod meg.
Ma már egy unixon soha nem tudhatod, hogy milyen shell van a szabvány sh alá dugva és az mennyire kompatibilis. Ezért szerintem jobb megoldás, ha konkrétan megmondod, hogy melyik shellt akarod. Pl. egy átlag debianon bash van az sh alatt, viszont most akarnak áttérni dash-ra. Az ördögnek pedig árkok vannak a szeme alatt (mert nem alszik
).
A fordított aposztróffal meg nem az a bajom, hogy obsolote, hanem az, hogy nehéz egymásba ágyazni
[ Szerkesztve ]
a PH! kedvenc ISP-trollja (C) Tyberius | http://itcafe.hu/tema/a_nagy_openwrt_topic/friss.html
viszont pont azert szokas /bin/sh-t hasznalni, mert az az 'sh-szintig' kompatibilis, tehat ha a script sima sh-val fut, akkor futnia kell azzal is, amire a /bin/sh mutat, barmi is legyen az
mondju a debiannak rogeszmeje mindig mindent mashogy csinalni mint mindenki mas :-/
az egymasba agyazas valoban nehezkes backtick-kel, de az mar eleve csunya (marmint nem a backtick, az jooo
)
"egy felugró ablak kiírja, hogy pop-up blockert installáltam"
"ha a script sima sh-val fut, akkor futnia kell azzal is, amire a /bin/sh mutat, barmi is legyen az"
Viszont ez nem kommutativ relacio, vagyis ha nalad a /bin/sh fedonev alatt futo bashon fut, az nem jelenti azt, hogy barmilyen sh--kompatibilis shellen is futni fog. (Mondjuk ugy remlik, hogy konkretan a bash ujabb verzio figyelnek erre, es ha /bin/sh neven hivja meg az ember, akkor az extra bashes funkciokat kikapcsolja - de erre azert nem epitenek.)
Falsus in uno, falsus in omnibus.
Minden bash verziónál volt ígéret arra, hogyha sh-ként indítod, szabvány shellként fog futni. De vajon betartották-e az ígéretet?
#418: egyelőre a debian az a linux, amiből legtöbbet lehet profitálni, ha át kell ülni nagyobb gépre. Egyedül ezt a betonfejű gpl dolgot nem komálom, a többi része szerintem jobb, mint más linuxoké.
[ Szerkesztve ]
a PH! kedvenc ISP-trollja (C) Tyberius | http://itcafe.hu/tema/a_nagy_openwrt_topic/friss.html
egyelőre a debian az a linux, amiből legtöbbet lehet profitálni, ha át kell ülni nagyobb gépre.
mire gondolsz? en pont azt latom benne, hogy mindenre van sajat, debian-only megoldasa, vagyis az "ismerem a linuxot" es az "ismerem a debiant" kozel sem ugyanaz, a kereskedelmi unixoktol meg meg messzebb all
[ Szerkesztve ]
"egy felugró ablak kiírja, hogy pop-up blockert installáltam"
Az initje, a fájlrendszere ennek hasonlít legjobban a szabványra. Más kérdés, hogy ahogy mindenkinek a gépére fel akarnak mászni, egyre több idétlenséget raknak bele.
a PH! kedvenc ISP-trollja (C) Tyberius | http://itcafe.hu/tema/a_nagy_openwrt_topic/friss.html
fiatalok, ne ezt a topikot flameljétek tele debian-flame-mel. sőt, uinkább egyiket se. thx.
ez olyan, mint a görögtűz, csak görögvíz - Loretto
nem flame-nek szantam, csak nem ertettem 
"egy felugró ablak kiírja, hogy pop-up blockert installáltam"

"az egymasba agyazas valoban nehezkes backtick-kel, de az mar eleve csunya (marmint nem a backtick, az jooo
)"
Hát nem értek egyet. Én szeretem az egymásba ágyazást és $(...) módszerrel nagyon szépen és látványosan meg is lehet oldani. (vajon ez szabványos vagy bash specifikus? Életemben nem használtam még más shell-t :-) )
És tényleg át akarnak állni dash-ra? Az miért lesz jobb? Egyáltalán miben lesz más?
Állatkerti képek: http://zoopic.ya.hu

Egy játékbeli vásárlást végrehajtó script írására keresek vállalkozó szellemű egyént!
Részletek privátban! 
STEAM: clonefec
es azt szabad?
"egy felugró ablak kiírja, hogy pop-up blockert installáltam"

Sokan csinálják! 
STEAM: clonefec
nem ez volt a kerdes 
"egy felugró ablak kiírja, hogy pop-up blockert installáltam"

Sziasztok
Akárhogy keresgélek, nem találok olyan parancsot, ami egyszerűen visszaadná egy adott domain IP címét (mondjuk ha a example.com címét szeretném megtudni, akkor kiírná, hogy "192.0.32.10")
Valami ötlet?
Állatkerti képek: http://zoopic.ya.hu
pingeld meg, az a legegyszerubb 
vagy nslookup
"egy felugró ablak kiírja, hogy pop-up blockert installáltam"

scriptből kellene. Az nslookup-ot én is néztem, és ha nagyon muszáj, akkor egreppel ki lehet belőle szedni az IP címet, de arra gondoltam, hogy csak van erre egy jobb módszer...
Állatkerti képek: http://zoopic.ya.hu
ja ertem
hat most csinaltam gyorsan egy nagyon randa de legalabb mukodo megoldast ping-gel:
ping www.index.hu -c 1 | head -n 1 | cut -d ' ' -f 3 | tr -d '(' | tr -d ')'
vagy nslookuppal normalisabb:
nslookup www.index.hu | grep Address | tail -n 1 | cut -d ' ' -f 2
[ Szerkesztve ]
"egy felugró ablak kiírja, hogy pop-up blockert installáltam"

Azt hittem van valami szebb. Ilyen randa nekem is ment - bár én a reguláris kifejezéseket jobban csípem:
nslookup index.hu | grep "Address" | egrep -o "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$"
Állatkerti képek: http://zoopic.ya.hu

Parancsolj: dig +noall +short www.index.hu
A bind-hez tartozik egy host nevű parancs is...
host index.hu |grep address | cut -f 4 -d\
[ Szerkesztve ]
a PH! kedvenc ISP-trollja (C) Tyberius | http://itcafe.hu/tema/a_nagy_openwrt_topic/friss.html

Tökéletes! Köszönöm!
Állatkerti képek: http://zoopic.ya.hu

Sziasztok!
Segítségre lenne szükségem a következőhöz:
Írnom kell egy scriptet, ami a paraméterként kapott szöveget függőlegesen írja ki.
Kérlek, segítsetek, fogalmam sincs, hogyan kéne megcsinálni...
Köszi szépen 
Szerk: Az jutott eszembe, hogy karakterenként lehetne beolvasni a paramétert, és azokat egyesével új sorba helyezni... Ez jó? Ha igen, ez hogyan néz ki?
[ Szerkesztve ]
for i in `seq 1 ${#szoveg}` ; do echo ${szoveg:i-1:1} ; done
hazi feladat? 
[ Szerkesztve ]
"egy felugró ablak kiírja, hogy pop-up blockert installáltam"

Igen, az 
Ez így nem működik, nem ír ki semmit:
#!/bin/sh
for i in `seq 1 ${#szoveg}` ;
do echo ${szoveg:i-1:1} ;
done
persze hogy nem, mert a szoveg valtozoban nincs semmi
tessek szepen tartalommal megtolteni, de ezt mar rad bizom
a ;-k meg feleslegesek a sor vegen
"egy felugró ablak kiírja, hogy pop-up blockert installáltam"
Ez nem annyira jo, mert a ${s:x:y} csak bashben mukodik, en inkabb vmi ilyesmivel probalkoznek:
#!/bin/sh
for txt in "$@" ; do
while [ -n "$txt" ] ; do
echo $txt | cut -c1
txt="`echo $txt | cut -c2-`"
done
echo ""
done
Falsus in uno, falsus in omnibus.
jogos a felvetes, bar a bash szerintem mar sok eve eleg alapveto kovetelmeny mindenhol
"egy felugró ablak kiírja, hogy pop-up blockert installáltam"
Parszor mar volt ugy, hogy HP-UX-en, SCO-n v vmi hasonlon kellett produkalnom valamit, ahol nem volt bash, azota egy kicsit ovatosabb vagyok 
Falsus in uno, falsus in omnibus.
AIX meg IRIX mar nalam is jatszott 
de egyiknel sem voltak ugy kiakadva, mint mikor kiderult egy oranyi szopas utan, hogy debianeknal a /bin/sh a dash-re van linkelve, ami nem erti tobbek kozott a [ parancsot...
"egy felugró ablak kiírja, hogy pop-up blockert installáltam"

Köszönöm szépen a segítséget mindkettőtöknek 
a kétszeres idézőjelezés miért kell?
a PH! kedvenc ISP-trollja (C) Tyberius | http://itcafe.hu/tema/a_nagy_openwrt_topic/friss.html

Sziasztok!
Remélem, jó helyre jövök a kérdésemmel.. 
Szóval, a problémám az lenne, hogy Shellscriptben írnom kell egy scriptet, ami egy paraméterként adott fájlt szétválogat páros, és páratlan sorokra, és ezeket új fájlokban helyezi el.
Remélem, tudtok segíteni, köszi szépen!
Nermal
Persze, tudunk segíteni. Hol akadtál el?
a PH! kedvenc ISP-trollja (C) Tyberius | http://itcafe.hu/tema/a_nagy_openwrt_topic/friss.html