Új hozzászólás Aktív témák
-
válasz SteveBeard #1209 üzenetére
ha írsz egy set -x -et az elejére, látni fogod a debug infókat.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
válasz SteveBeard #1211 üzenetére
./scriptnev 2>error.log
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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
MOD: egyébként van host program is, az nem jobb?
[ Szerkesztve ]
Jester
-
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.Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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
Jester
-
válasz SteveBeard #1226 üzenetére
sed -e 's/\.lan//'
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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 isJester
-
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)
[ Szerkesztve ]
Jester
-
válasz SteveBeard #1245 üzenetére
cut -d\ -f 5 | cut -d. -f 1
ez gyorsabb és csak két fork ugyanarra a programra.Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
Jester01
veterán
-
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?Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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.Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
válasz SteveBeard #1275 üzenetére
az echo 1 | awk '{}' helyett awk 'BEGIN {..}' elegánsabb.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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.
Jester
-
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" ] ...Jester
-
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)Jester
-
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.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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....[ Szerkesztve ]
Steve
-
válasz SteveBeard #1287 üzenetére
emlékeim szerint az rm -f nem szól be.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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)
Jester
-
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)
Jester
-
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.Jester
-
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.Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
SteveBeard
senior tag
válasz SteveBeard #1308 üzenetére
Esetleg erre gondoltál?
cat /opt/www_traff/prevmac.txt | sort -u[ Szerkesztve ]
Steve
-
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.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
szoke12
őstag
válasz SteveBeard #1358 üzenetére
Próbáld ki a bc-t. lehet telepíteni kell.
az elméletileg tud ilyet."Élj úgy, hogy ha majd lepereg előtted életed filmje, érdemes legyen végignézni!"
-
dabadab
titán
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-banDRM is theft
-
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é.Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
Intruder2k5
MODERÁTOR
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!
[ Szerkesztve ]
-
Intruder2k5
MODERÁTOR
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!
-
Intruder2k5
MODERÁTOR
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...
[ Szerkesztve ]
-
MacCaine
őstag
válasz SteveBeard #1538 üzenetére
man tee
-
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.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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.
[ Szerkesztve ]
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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!
Jester
-
válasz SteveBeard #1552 üzenetére
kiíratáskor kell megfelelő formáttum maszkot megadni.
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
Jester01
veterán
-
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.
[ Szerkesztve ]
Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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.Egy átlagos héten négy hétfő és egy péntek van (C) Diabolis
-
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.
Jester
-
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.
[ Szerkesztve ]
Jester
Új hozzászólás Aktív témák
- Gitáros topic
- NVIDIA GeForce RTX 4080 /4080S / 4090 (AD103 / 102)
- Le Mans Ultimate
- Gyúrósok ide!
- Háztartási gépek
- TCL LCD és LED TV-k
- Kerékpárosok, bringások ide!
- HBO Max & OD topic
- Otthoni hálózat és internet megosztás
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- További aktív témák...
- Bitdefender Total Security 3év/3eszköz! - "Tökéletes védelem most kedvező áron..."
- Steames kulcsok jó áron eladóak!
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Windows 10/11 Home/Pro , Office OEM/Retail kulcsok
- Bontatlan - BATTLEFIELD 1 Collectors Edition - Játékszoftver nélkül