Hirdetés
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- sh4d0w: Kalózkodás. Kalózkodás?
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Meggyi001: Kórházi ellátás: kuka vagy finom?
- sh4d0w: StarWars: Felismerés
- gban: Ingyen kellene, de tegnapra
- Brogyi: CTEK akkumulátor töltő és másolatai
- GoodSpeed: Kell-e manapság egérpad vagy sem?
Új hozzászólás Aktív témák
-
Jester01
veterán
válasz
SteveBeard
#2295
üzenetére
Az echo-nak működnie kell akár cron script akár nem. Ott valami más gubanc van.
-
Jester01
veterán
válasz
SteveBeard
#2293
üzenetére
Az első megoldással semmi más dolgod nincs mint betenni a reboot helyett, ebben mi okozott gondot?

A másodikban nem értem minek a screen, látszólag az is inkább egy echo AT^RESET > dev/ttyUSB1 akar lenni.
-
válasz
SteveBeard
#1831
üzenetére
mv paranccsal lehet átnevezni
az ls tud -c paramétert is, akkor nem kell az awk a végére. -
válasz
SteveBeard
#1558
üzenetére
szerintem az idézőjelek közé annyi szóközt berakhatsz, amennyi jólesik... viszont lehet, hogyha \t elé rakod, nem fog látszani.
-
Jester01
veterán
válasz
SteveBeard
#1555
üzenetére
printf-et is használhatsz:
$ printf "%02d\n" 4
04 -
válasz
SteveBeard
#1552
üzenetére
kiíratáskor kell megfelelő formáttum maszkot megadni.
-
Jester01
veterán
válasz
SteveBeard
#1552
üzenetére
Eléírod aztán levágod:
MINUTES=0$MINUTES
MINUTES=${MINUTES: -2}Figyelem, a -2 előtt kötelező a szóköz!
-
válasz
SteveBeard
#1546
üzenetére
ezt valahogy úgy is lehetne, de csak fejből írva teszt nélkül, hogy:
sed -e 's/\([^ ]*\) \(.*$\)/\1/' -e 's/:/-/g' \
-e "s,.*,<img src='/${IMAGEDIR}/&_${STATDATE}.png'>," /opt/mac.txtez viszont nem fogja megnézni, hogy van-e kép vagy nincs.
-
válasz
SteveBeard
#1548
üzenetére
a cat filenev | awk szerkezetek nem szerencsések, helyette awk '....' filenev javasolt.
első ránézésre azért nem működött, mert vagy van kép, vagy nincs, ezért amikor van, azt else ágba kellett volna rakni, nem a feltételes utasításon kívülre. tehát:
if [ -r $kepneve ] ; then
echo azt, amikor van kép
else
echo azt, amikor nincs kép
fiha nincs kép, és nem is akarsz kirakni helyette valami default hibajelző képet, akkor az else meg a második echo elmaradhat.
-
válasz
SteveBeard
#1546
üzenetére
egy változóba össze kellene rakni a kép nevét, utána:
[ -f $kepneve ] && echo "<img src ...."
[ -f $kepneve ] || echo ures kepre mutato link vagy semmi.a forkbombának továbbra sem örülünk
ezt az egész for ciklust jelenlegi állapotában egy darab sed-del helyettesíteni lehet szerintem. -
MacCaine
őstag
válasz
SteveBeard
#1538
üzenetére
man tee
-
válasz
SteveBeard
#1523
üzenetére
Hát hajrá! Úgyis Te lelted meg!

De ez tényleg hasznos! Remélem ez ellen nem találnak ki semmit...
-
válasz
SteveBeard
#1517
üzenetére
Á, köszönöm szépen, de közben próbálkoztam még én is, és arra jutottam, hogy valami a jelszóban nem tetszik neki (van sok spec karakter benne), mert egy másik accounttal, ahol lényegesen egyszerűbb a pass, simán bemegy! Szóval ez innen már menni fog, gondolom csak ki kell cserélnem a jelszót!
Én is keresgéltem már ezelőtt, találtam is ezt-azt, de egyik script sem működött! Mondjuk ezt eddig még nem próbáltam, de ilyen elgondolással akkor az is lehet, hogy eddig is volt már olyan, ahol csak a jelszó miatt nem ment! Minden esetre köszönöm szépen a segítséget!

Reméljük ez meg is oldja ezt a problémát!

-
válasz
SteveBeard
#1515
üzenetére
Szia!
Köszönöm szépen, de úgy néz ki, hogy nekem ez sajnos nem megy! Biztosan valami optware cucc nem tetszik neki, vagy lövésem sincs, de ezt kapom...
root@INT-ROUTER:/jffs# dyndns-login.sh
DEBUG: Fetching initial headers to pre-load cookies...
HTTP/1.1 200 OK
Date: Sun, 23 Jun 2013 09:47:04 GMT
Server: Apache
Cache-control: no-cache
Content-Type: text/html; charset=ISO-8859-1
Expires: Sun, 23 Jun 2013 09:47:04 GMT
Set-Cookie: id=U0NDYPmJpVQ4MLIlf16gvYU; domain=account.dyn.com; path=/; expires=Sat, 21-Sep-2013 09:47:04 GMT
Accept-Ranges: none
Vary: Accept-Encoding
DEBUG: Fetching UID...
DEBUG: Read UID as 'C75BD9BB1FB04F59E6154EB0ED2FF8' - posting data...
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HTML><HEAD>
<TITLE>302 Found</TITLE>
</HEAD><BODY>
<H1>Found</H1>
The document has moved <A HREF="https://account.dyn.com/">here</A>.<P>
</BODY></HTML>
DEBUG: Response received - verifying result...
Login failed
root@INT-ROUTER:/jffs#Van curl-em, több is, próbáltam cserélni is azokat elérési út megadásával, de egyikkel sem megy!
-
válasz
SteveBeard
#1471
üzenetére
ha a kérdés a forrás ip címre vonatkozik, akkor valahogy így:
a LOCAL_IP= sor helyett:
for LOCAL_IP in ip1 ip2 ip3; doa végére meg egy done.
a szépség kedvéért ilyenkor a TIME_ sorokat kiteheted a ciklus elé. -
válasz
SteveBeard
#1471
üzenetére
Nem igazan ertem a kerdest. Ez mar most igy is tobb IP cimet is tud tiltani, csak fell kell oket sorolni az
etc/url_string.txt file-ban -
szoke12
őstag
válasz
SteveBeard
#1358
üzenetére
Próbáld ki a bc-t. lehet telepíteni kell.
az elméletileg tud ilyet. -
válasz
SteveBeard
#1356
üzenetére
a bash nem kezel törteket. szét kell szedned egész részre és tört részre.
-
SteveBeard
senior tag
válasz
SteveBeard
#1308
üzenetére
Esetleg erre gondoltál?
cat /opt/www_traff/prevmac.txt | sort -u -
válasz
SteveBeard
#1306
üzenetére
ezzel az a gond, hogy a korábbi mac-eket törlöd vele.
tehát egyszerre kellene felhasználni a prevmac fájl tartalmát ÉS az aktuális mac-eket és mindkettőt kiírni a fájlba.felesleges fork még van benne

-
válasz
SteveBeard
#1304
üzenetére
rendszeres időközönként, például cronnal, kiszeded a mac címeket az arp cache-ből, hozzámásolod egy fájlból a korábban látottakat, sorbarendezed, uniq-kal kiszeded a duplikációt és leteszed ugyanebbe a fájlba.
majd ez alapján gyártod a grafikont.
-
válasz
SteveBeard
#1300
üzenetére
lehet, hogy a macnál kettőspontot használ elválasztásra, nem kötőjelet.
a router felületén kötőjellel van (legalábbis a gyári firmware webjén), a linux kernelben meg nem. -
Jester01
veterán
válasz
SteveBeard
#1298
üzenetére
Azért van a topik.
Melyik részével nem boldogultál? Csak egy string konstansba kellett volna felvenned a mac listát ahogy mutattam, aztán meg az az if kell és kész. -
Jester01
veterán
válasz
SteveBeard
#1294
üzenetére
Például belepakolod egy asszociatív tömbbe ami nem kell.
#! /bin/bash
declare -A ignore
ignore=(
["00-00-00-00-00-01"]=1,
["00-00-00-00-00-03"]=1,
["00-00-00-00-00-05"]=1,
["00-00-00-00-00-07"]=1
)
for ((i=1; i<8; i+=1))
do
mac="00-00-00-00-00-0$i"
echo -n "$mac "
if [[ ${#ignore[$mac]} = 0 ]]
then
echo "valid"
else
echo "ignored"
fi
done$ ./test.sh
00-00-00-00-00-01 ignored
00-00-00-00-00-02 valid
00-00-00-00-00-03 ignored
00-00-00-00-00-04 valid
00-00-00-00-00-05 ignored
00-00-00-00-00-06 valid
00-00-00-00-00-07 ignored(Ez viszont busybox-ban így nem megy)
-
Jester01
veterán
válasz
SteveBeard
#1291
üzenetére
$ date +%Y-%V
2013-02man date: %V ISO week number, with Monday as first day of week (01..53)
-
válasz
SteveBeard
#1287
üzenetére
emlékeim szerint az rm -f nem szól be.
-
SteveBeard
senior tag
válasz
SteveBeard
#1287
üzenetére
Kiszaladtam a szerkesztési időből.
Arra közben rájöttem, hogy az nem tetszik neki, ha ugyanolyan kiterjesztésű fájlból többet talál.
Ha csak egy van belőle, akkor simán törli.... -
válasz
SteveBeard
#1283
üzenetére
a múltkori cuccot, amit faragtál, kitehetnéd publikus helyre (pl. logout blog), hátha mást is érdekel.
-
Jester01
veterán
válasz
SteveBeard
#1281
üzenetére
Kiírja a syslog-ba a megadott szöveget a megadott "tag" megjelöléssel:
Hogy honnan tudom? Hát innen:$ logger --help
BusyBox v1.17.1 (Debian 1:1.17.1-8) multi-call binary.
Usage: logger [OPTIONS] [MESSAGE]
Write MESSAGE (or stdin) to syslog
Options:
-s Log to stderr as well as the system log
-t TAG Log using the specified tag (defaults to user name)
-p PRIO Priority (numeric or facility.level pair) -
Jester01
veterán
válasz
SteveBeard
#1278
üzenetére
Értem én. A tagadást gondoltam a környezet függvényében már megoldod.
Például if [ ! -f "$png" ] ... -
Jester01
veterán
válasz
SteveBeard
#1275
üzenetére
Tedd a fájlnevet egy változóba (pl. $png) aztán ellenőrizd, hogy létezik-e: if [ -f "$png" ]
A hét számának előállítása igen kreatív.

-
válasz
SteveBeard
#1275
üzenetére
az echo 1 | awk '{}' helyett awk 'BEGIN {..}' elegánsabb.
-
válasz
SteveBeard
#1269
üzenetére
azt ugye tudod, hogy a routeredben a flash nagyon nem fogja csípni, ha 5 percenként teleírod grafikákkal? ezt külsőleg csatlakoztatott pendrive-on érdemes.
-
válasz
SteveBeard
#1260
üzenetére
még annyit lehetne optimalizálni az egészen, hogy amikor az iptables logját mented az ideiglenes fájlba, akkor csinálsz egy kis előfeldolgozást, hogy a későbbi adatbányászathoz egyszerűbb formátumban teszed le az adatokat.
-
válasz
SteveBeard
#1260
üzenetére
két awk-nak egymás után, amik csak kiírnak, nincs értelme.
akkor már elég lenne a két awk helyett egy awk '{print $2}'
ezt még lehetne azzal rövidíteni, hogyha print helyett printf-et használsz, és nem írsz bele soremelést a végére, akkor nem írja ki, tehát a tr-t is le lehet hagyni a végéről.
az egész kb. ennyi lenne:IN=$(grep $IP /opt/test/sum/traffic.tmp | awk '{printf "%d",$2 }' )"
viszont ez a két irányt össze fogja keverni, a bemeneti és a kimeneti irányra is ki fogja írni a forgalmat. tehát kell még bele egy feltétel.
-
válasz
SteveBeard
#1254
üzenetére
"IN=$(cat /opt/test/sum/traffic.tmp | awk '{print $2 " " $7}' | grep $IP | awk '{print $1}' | tr -d '\n' )"
bajok:
- ha a grep $IP-t másodiknak rakod, akkor az első awknak fel kell dolgoznia minden sort, amiben nincs benne az ip, azt is, feleslegesen. tehát ha tudod szűrni, csökkenteni azt az adatmennyiséget, amit az awknak betolsz, azt jobb minél előbb, mert az awk egyébként interpreter nyelv, tehát lassú
- tehát nem cat /opt...| awk | grep $IP, hanem grep $IP /opt/test/sum/traffic.tmp
- ebben az esetben szerintem a két awk összevonható egybe
- például így: awk '{ if ($7==$IP) print $2' }" szintaxist most nem teszteltem terminálban.
- ha a végén úgyis letörlöd a soremelést, akkor egyszerűbb az awk-kal ki sem iratni, megint megspóroltál egy forkot.elvileg az awk-nak lehet kívülről változónak értéket adni, valahogy így a doksi szerint: awk -v IP=192...
és akkor erre tudsz a programon belül hivatkozni. -
válasz
SteveBeard
#1254
üzenetére
azt ugye érzed, hogyha azt írod, hogy:
cat filenev | awk
ahelyett, hogy
awk '{...}' filenev
akkor itten téged virtuálisan keresztre feszítenek?
-
Jester01
veterán
válasz
SteveBeard
#1251
üzenetére
Persze, bármit megjavítunk, hadd pörögjön a topik

-
válasz
SteveBeard
#1245
üzenetére
cut -d\ -f 5 | cut -d. -f 1
ez gyorsabb és csak két fork ugyanarra a programra. -
Jester01
veterán
válasz
SteveBeard
#1238
üzenetére
Feltéve, hogy az első Name: kezdetű sor után következik amit ki akarunk szedni akkor például:
name=$(nslookup $IP | awk '/^Name:/ { getline; print $4; exit }')
name=${name%.lan}(bash esetén legalábbis)
-
Jester01
veterán
válasz
SteveBeard
#1232
üzenetére
De én az nslookup kimenetét szeretném, nem azt ami már átment a csövön

Szép az a forrás is
-
válasz
SteveBeard
#1226
üzenetére
sed -e 's/\.lan//'
-
Jester01
veterán
válasz
SteveBeard
#1226
üzenetére
Semmi probléma, de még mindig nem muttattad meg mi jön ki az nslookup-ból

-
válasz
SteveBeard
#1221
üzenetére
nem ártana helyes sorrendbe rakni az aposztrófokat és a kapcsos zárójeleket.
a kapcsos zárójelek közé írt szöveg az awk paramétere, amit a shelltől védeni kell, tehát a helyes sorrend
aposztróf-kapcsos zárójel-awk program-kapcsos zárójel-aposztróf. -
Jester01
veterán
válasz
SteveBeard
#1221
üzenetére
Ezt már megint nem értem, biztos velem van a baj.
Nem tudnád megmutatni mit köp ki az nslookup amit át akarsz alakítani?Egyébként a grep | grep | awk -ért kapsz egy jó nagy pofont
![;]](//cdn.rios.hu/dl/s/v1.gif)
MOD: egyébként van host program is, az nem jobb?
-
válasz
SteveBeard
#1211
üzenetére
./scriptnev 2>error.log
-
válasz
SteveBeard
#1209
üzenetére
ha írsz egy set -x -et az elejére, látni fogod a debug infókat.
Új hozzászólás Aktív témák
- iPhone 12 Pro 256GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS3581, 100% Akksi
- GYÖNYÖRŰ iPhone 13 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3437, 100% Akkumulátor
- GYÖNYÖRŰ iPhone 14 Pro Max 256GB Space Black - 1 ÉV GARANCIA, Kártyafüggetlen,MS3489, 100% Akksi
- MacBook felvásárlás!! MacBook, MacBook Air, MacBook Pro
- Bomba ár! Lenovo X1 Yoga 1st - i5-6G I 8GB I 512SSD I 14" FHD Touch I HDMI I W11 I CAM I Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest

ezt az egész for ciklust jelenlegi állapotában egy darab sed-del helyettesíteni lehet szerintem.





![;]](http://cdn.rios.hu/dl/s/v1.gif)

