Kezdőlap › Fórumok › Programozás › Bash script
- This topic has 437 hozzászólás, 56 résztvevő, and was last updated 13 years, 6 months telt el by
Goosfrabaa.
-
SzerzőBejegyzés
-
2006-11-02-20:41 #2053359
Nekem van. Gondolom, jó lenne, ha el is árulnám :poketoungeb:
Code:for i in `find /path/ahonnan/akarod -type f`; do
ujnev=`basename $i`
mv $i /ahova/akarod/masolni/`echo $ujnev | sed ‘s@.[a-z|A-Z|0-9]*$@@g’`
done2006-11-02-20:47 #2053360hozzászólás törölve
2006-11-02-21:02 #2053361Ahha. Ez tetszik. Köszönöm szépen.
Szerk.: kihozzátok belőlem az ihletet… olyan ötleteket adtok, hogy magam is meglepődöm, miket tudok alkotni belőlük 🙂
2006-11-04-15:54 #2053362Tudnátok erre valami rövidebb/elegánsabb megoldást?
Code:pnmcat -lr $DIR/${t[57]} $DIR/${t[58]} $DIR/${t[59]} $DIR/${t[60]} $DIR/${t[61]} $DIR/${t[62]} $DIR/${t[63]} $DIR/${t[64]} >$DIR/result1
pnmcat -lr $DIR/${t[49]} $DIR/${t[50]} $DIR/${t[51]} $DIR/${t[52]} $DIR/${t[53]} $DIR/${t[54]} $DIR/${t[55]} $DIR/${t[56]} >$DIR/result2
pnmcat -lr $DIR/${t[41]} $DIR/${t[42]} $DIR/${t[43]} $DIR/${t[44]} $DIR/${t[45]} $DIR/${t[46]} $DIR/${t[47]} $DIR/${t[48]} >$DIR/result3
pnmcat -lr $DIR/${t[33]} $DIR/${t[34]} $DIR/${t[35]} $DIR/${t[36]} $DIR/${t[37]} $DIR/${t[38]} $DIR/${t[39]} $DIR/${t[40]} >$DIR/result4
pnmcat -lr $DIR/${t[25]} $DIR/${t[26]} $DIR/${t[27]} $DIR/${t[28]} $DIR/${t[29]} $DIR/${t[30]} $DIR/${t[31]} $DIR/${t[32]} >$DIR/result5
pnmcat -lr $DIR/${t[17]} $DIR/${t[18]} $DIR/${t[19]} $DIR/${t[20]} $DIR/${t[21]} $DIR/${t[22]} $DIR/${t[23]} $DIR/${t[24]} >$DIR/result6
pnmcat -lr $DIR/${t[9]} $DIR/${t[10]} $DIR/${t[11]} $DIR/${t[12]} $DIR/${t[13]} $DIR/${t[14]} $DIR/${t[15]} $DIR/${t[16]} >$DIR/result7
pnmcat -lr $DIR/${t[1]} $DIR/${t[2]} $DIR/${t[3]} $DIR/${t[4]} $DIR/${t[5]} $DIR/${t[6]} $DIR/${t[7]} $DIR/${t[8]} >$DIR/result8pnmcat -tb $DIR/result1 $DIR/result2 $DIR/result3 $DIR/result4 $DIR/result5 $DIR/result6 $DIR/result7 $DIR/result8
(A feladat az lenne, hogy egy 64-ig indexelt tömb elemeiből(filenevek) egy 8×8-as nagy képet csináljak.)
2006-11-06-19:24 #2053363Hi
Kellene egy kis segítség.
Van egy pppd indító scriptem, ami működik csak a következővel van egy kis gondom.
Letiltom a pppd kimenetét és így működik is.Code:pon $1 updetach >/dev/nullDe ha a „>/dev/null-t” egy változóba teszem akkor már a változót paraméternek veszi és nem működik.
Code:NULL=”>/dev/null”
pon $1 updetach $NULL
pon $1 updetach „$NULL”
pon $1 updetach ${NULL}
pon $1 updetach „${NULL}”Megoldható az , hogy szabályozni lehessen valahogy egy progam kimenetét, hogy megjelenjen, vagy ne. Én a fenti módon akartam, hogy egyszer van értéke a NULL-nak NULL=”>/dev/null”, akkor nincs kimenet. Egyszer pedig nincs értéke NULL= akkor pedig megjelenik a kimenet.
Kösz.2006-11-06-19:59 #2053364retaliator44: for-ciklussal generálod a paraméterlistát?
milfer: mi lenne, ha csak egy egyszerű változó lenne, valami ilyesmi:
Code:if [ -z $NULL ]; then
pon
else
pon > /dev/null
fiEgyébként szenvedtem én is ilyesmivel, csak csövezéssel. Én egy ilyen „áthidaló” megoldást találtam.
2006-11-06-20:17 #2053365uzsolt wrote:retaliator44: for-ciklussal generálod a paraméterlistát?milfer: mi lenne, ha csak egy egyszerű változó lenne, valami ilyesmi:
Code:if [ -z $NULL ]; then
pon
else
pon > /dev/null
fiEgyébként szenvedtem én is ilyesmivel, csak csövezéssel. Én egy ilyen „áthidaló” megoldást találtam.
Végülis így is jó, már nem láttam a fátol az erdőt. 🙂 Igaz nem csak a pon-ról van szó, van itt smbmount, iptables, ip route, stb., stb.
Megpróbálom így, és mindíg a run-t hívom meg a futtatandót átadva paraméternek.Code:run() {
if [ -z $NULL ]; then
$1
else
$1 > /dev/null
fi
}2006-11-06-21:21 #2053366uzsolt wrote:retaliator44: for-ciklussal generálod a paraméterlistát?Igen, két egymásba ágyazott for ciklus számítja ki a t tömb értékeit.
De lenne rögtön még egy kérdésem is: egy stringben hogy lehet sed nélkül megszámolni mondjuk az F betűket?
2006-11-07-06:28 #2053367Csak a nagy F-eket?
tr -d [a-z][A-E][G-Z][0-9]’n'[.,] ….. | wc -b
Nyilván ezt csövezed. Tehát mi is a lényeg: minden NEM F-et törlünk (lehet, hogy ezt jobban is meg lehet oldani), majd a végeredmény hosszát a wc -b-vel megnézzük.
2006-11-07-06:31 #2053368retaliator44 wrote:Igen, két egymásba ágyazott for ciklus számítja ki a t tömb értékeit.Jajj, most látom, hogy félreértettél.
Én valahogy így gondoltam:Code:for i in `seq 57 64`; do
PARAMETER=$PARAMETER” „$DIR/${t[$i]}
done
nmcat -lr $PARAMETER > $DIR/result1Nem tudom, működik-e, nincs most időm kipróbálni.
-
SzerzőBejegyzés
- Be kell jelentkezni a hozzászóláshoz.
legutóbbi hsz