Hirdetés

2019. február 19., kedd

Gyorskeresés

Hozzászólások

(#2001) Dadi207


Dadi207
(újonc)

Sziasztok,
segítségre lenne szükségem. :)
Készítettem egy scriptet, ami rendszeresen frissít néhány dolgot a telefonomon. A problémám az lenne, hogy ha így írom, akkor minden jól működik:

#!/sbin/sh

if [ -e $CMU/cm*NIGHTLY-bacon.zip ] || [ ! -e /data/system/packages.xml ]; then

Viszontha így, akkor nem:

#!/sbin/sh

CM=$(cd $CMU && ls cm*NIGHTLY-bacon.zip)

if [ -e $CMU/$CM ] || [ ! -e /data/system/packages.xml ]; then

Valaki tudna nekem segíteni, hogy miért nem működik a második?
Előre is köszönöm a válaszokat. :))

OnePlus One

(#2002) Jester01 válasza Dadi207 (#2001) üzenetére


Jester01
(PH! kedvence)

A közhiedelemmel ellentétben az ls cm*NIGHTLY-bacon.zip parancsban a *-ot nem az ls oldja fel, hanem még a shell. Jelen esetben amikor ez történik, akkor még nem futott le a cd $CMU ezért nem talál illeszkedő fájlokat, így beállítástól függően vagy törli az argumentumot vagy pedig változatlanul adja át. Előbbi esetben az ls kimenete a $CMU teljes tartalma lesz, utóbbi esetben pedig semmi, mivel az ls maga már nem kezeli le a *-ot ezért betű szerint azt a fájlt keresi, hogy cm*NIGHTLY-bacon.zip (így, a csillaggal).

Jester

(#2003) Dadi207


Dadi207
(újonc)

Azóta már sokat változtattam rajta, úgyhogy nincs is rá szükségem. Azért köszi a választ, legalább megint tanultam valamit. :C

OnePlus One

(#2004) csabi94


csabi94
(őstag)

Sziasztok, bash scriptel kéne megoldanom azt a feladatot, hogy kap egy fájlt paraméterül, és a fájlban levő betűket kellene megszámolni, hogy miből mennyi van. Ez hogyan kivitelezhető a legegyszerűbben?
Köszönöm segítségeteket előre is! :R

(#2005) Jester01 válasza csabi94 (#2004) üzenetére


Jester01
(PH! kedvence)

Egyenként beolvasod és egy tömbben számolod őket.

Jester

(#2006) csabi94 válasza Jester01 (#2005) üzenetére


csabi94
(őstag)

Köszi a gyors választ, eddig eljutottam, csak a megvalósítással vannak problémák. ;]

(#2007) Jester01 válasza csabi94 (#2006) üzenetére


Jester01
(PH! kedvence)

Melyik részével, mit csináltál eddig stb...

Jester

(#2008) bambano válasza Jester01 (#2007) üzenetére


bambano
(Jómunkásember)
LOGOUT blog

eddig ezt csinálta.

lezso6 szerint a user: rossz számtech karmája van | @netik: There is no Internet of Things. There are only many unpatched, vulnerable small computers on the Internet.

(#2009) csabi94 válasza bambano (#2008) üzenetére


csabi94
(őstag)

Igen, eddig ezt, aztán hallgattam rád... ;)

(#2010) Headless


Headless
(őstag)

Sziasztok!
Egy újabb nap, újabb script, újabb gond amit nem tudok megoldani.
URL decodolni szeretnék változóKAT. ehhez az uhttpd beépített dekódolóját használom azzal nincs baj működik jó is,
A script bemenetén a változóneveket kapja meg.

#!/bin/sh
for i in "$@"
do
eval ev=\$"$i"
dv=\'`uhttpd -d "$ev" | tr -d '\r'`\'
eval "$i=$dv"
echo "$i=$dv" >>/tmp/decoder
done

Ez egészen addig működik is, amíg nincsen egy idézőjel. Azután nem jól definiálja a változót, hogy lehetne megoldani, szépen és kevés karakterből. Jelenleg manuálisan van kiírva minden dekódolni kívánt változó de jobb lenne így ciklussal.

LEDE - R3G/DIR860l -> https://tinyurl.hu/Ntkb/

(#2011) Jester01 válasza Headless (#2010) üzenetére


Jester01
(PH! kedvence)

Miben van az idézőjel?

Jester

(#2012) Headless válasza Jester01 (#2011) üzenetére


Headless
(őstag)

A dekódolt stringben., de nem csak idézőjel hanem $ is tehát az nem játszik, hogy "-et használok eval-nál és skippelem azokat belül, akkor meg a változók nem fognak stimmelni.

LEDE - R3G/DIR860l -> https://tinyurl.hu/Ntkb/

(#2013) Jester01 válasza Headless (#2012) üzenetére


Jester01
(PH! kedvence)

eval "$i=$dv" helyett declare $i=$dv

Jester

(#2014) Headless válasza Jester01 (#2013) üzenetére


Headless
(őstag)

nincs declare, továbbra is routeren vagyok, nagyon minimális csomag mennyiség van :S

LEDE - R3G/DIR860l -> https://tinyurl.hu/Ntkb/

(#2015) Jester01 válasza Headless (#2014) üzenetére


Jester01
(PH! kedvence)

export van?

Jester

(#2016) Headless válasza Jester01 (#2015) üzenetére


Headless
(őstag)

Az van

LEDE - R3G/DIR860l -> https://tinyurl.hu/Ntkb/

(#2017) Jester01 válasza Headless (#2016) üzenetére


Jester01
(PH! kedvence)

És működik? :F

Jester

(#2018) bambano válasza Headless (#2010) üzenetére


bambano
(Jómunkásember)
LOGOUT blog

ugye amikor megtalálod a hibát és kijavítod és elkészül a program, akkor ezt az orbitális biztonsági lyukat is betömöd, mielőtt kikerül publikus netre?

lezso6 szerint a user: rossz számtech karmája van | @netik: There is no Internet of Things. There are only many unpatched, vulnerable small computers on the Internet.

(#2019) Headless válasza bambano (#2018) üzenetére


Headless
(őstag)

Ez helyi hálón fog futni csak, de mire gondolsz? Router webes felület kiegészítés csak.

LEDE - R3G/DIR860l -> https://tinyurl.hu/Ntkb/

(#2020) sto1911


sto1911
(PH! kedvence)

Sziasztok,

plink-el szeretnek tavolrol jelszot valtoztatni, hogyan kell bekuldeni neki a ket uj jelszot?
-m kapcsoloval fajlbol adom be neki, hogy passwd es ketszer az uj jelszot.

(#2021) bambano


bambano
(Jómunkásember)
LOGOUT blog

kolléga rtorrent indítószkriptet faragott.
kapjuk szét, mint foxi a lábtörlőt :)

lezso6 szerint a user: rossz számtech karmája van | @netik: There is no Internet of Things. There are only many unpatched, vulnerable small computers on the Internet.

(#2022) ux1 válasza bambano (#2021) üzenetére


ux1
(PH! addikt)

LOL:

felrakom én is a home-omat. ;]

-=[ 乂丨卂ㄖ爪丨 ]=-= [ 卩ㄖ匚ㄖ 千1 ]=-

(#2023) Lolek


Lolek
(fanatikus tag)

Sziasztok,

szükségem lenne egy scriptre (windows alá, .bat fájl)), de nem tudom hogy fogjak hozzá:

Be kell telnetlejek egy eszközbe és 3 parancsot kéne neki kiadni így:

telnetk x.x.x.x
első parancs >>> enter (esetleg kis szünet, hogy le tudjon futni mielött indul a következő)
második parancs >>> enter (esetleg kis szünet, hogy le tudjon futni mielött indul a következő)
haramadik parancs >>> enter (esetleg kis szünet, hogy le tudjon futni mielött indul a következő)

Tud valaki segíteni?

Köszönöm

(#2024) spammer válasza Lolek (#2023) üzenetére


spammer
(PH! kedvence)

Batch programozás

[ Szerkesztve ]

„A feketébe öltözött ember a sivatagon át menekült, a harcos pedig követte."

(#2025) birno


birno
(PH! addikt)

Sziasztok,

Windows alatt felraktam az msysgit-et es egy prepare-commit-msg bash scriptet probalok osszehozni arra, hogy berakja a commit message elereje az aktualis branch nevet, ha meg nem szerepelne benne.
Neten kismillio megoldas van, pl:

NAME=$(git branch | grep '*' | sed 's/* //')

if [[ $1 != $NAME* ]]
then
echo "$NAME"' '$(cat "$1") > "$1"
fi

Ez szep es jo egeszen addig, amig uj commitot csinalok vagy egy korabbit amend-elek, tehat

git commit -m "valami"
git commit --amend -m "valami"

ezeknel mukodik.

Ha mar nem akarom a message-t szerkeszteni amendnel, akkor nem jo, hozzaadja megegyszer:
git commit --amend --no-edit
Interactive rebasenel szinten, akkor is ha valtoztatni akarok a messagen meg akkor is ha nem, olyankor meg valami "(no branching...)" szoveget ad hozza, ami ha jol ertettem valoban egy branch neve, amit ideiglenesen hoz letre rebasenel.

Mi lenne a bulletproof script a problemara, ami tenyleg csak akkor adja hozza a branch nevet, ha meg nem szerepel benne?

Ergodox EZ elado: https://hardverapro.hu/apro/ergodox_ez_elado_2/friss.html

(#2026) MasterMark


MasterMark
(Jómunkásember)

Hello, ha van még itt valaki. :)

Hogy tudok adott sorból cut-olni közvetlen? Most elég idétlenül van megoldva, még pedig grep-el elé íratom a sor számát, majd megint grep szűrés az adott sorra, és aztán cut.
Szerintem van ennél egyszerűbb módja is, vagyis hogy rögtön kiadja azt a sort amelyikre szükségem van.

Előre is köszi. :R

(#2027) colomb2 válasza MasterMark (#2026) üzenetére


colomb2
(PH! kedvence)

Ha jol ertem ez kell neked:
awk -F "/" 'NR==1{print $1}' file
NR sor
$1 oszlop
-F field separator

Vigyázat, csalok!

(#2028) bambano válasza MasterMark (#2026) üzenetére


bambano
(Jómunkásember)
LOGOUT blog

head és tail.

lezso6 szerint a user: rossz számtech karmája van | @netik: There is no Internet of Things. There are only many unpatched, vulnerable small computers on the Internet.

(#2029) MasterMark válasza colomb2 (#2027) üzenetére


MasterMark
(Jómunkásember)

Köszi, ez tetszik, de valamiért nem megy bele változóba. :F

bambano: Köszi, de ezzel ugyanúgy több lépés lenne, és plusz számolgatás. :R

(#2030) colomb2 válasza MasterMark (#2029) üzenetére


colomb2
(PH! kedvence)

asd=`awk -F "/" 'NR==1{print $1}' file`
echo $asd
ha az a baj hogy valtozot nem tudsz adatni akkor meg awk -v kapcoslo kell.
Amugy ez igy vegigmegy az egesz fajlon, kicsit optimalizalas lehet hogy kiiratas utan kilepsz: {print $1;exit 0}
Masik amugy, az is lehet hogy gyorsabban megy a tail-head-cut combo mint az awk. :)

Vigyázat, csalok!

(#2031) bambano válasza colomb2 (#2030) üzenetére


bambano
(Jómunkásember)
LOGOUT blog

a fordított aposztróf már több éve deprecated.
$(...)-t használunk
szerintem a shell behelyettesítené, ha megfelelően írnád bele.

lezso6 szerint a user: rossz számtech karmája van | @netik: There is no Internet of Things. There are only many unpatched, vulnerable small computers on the Internet.

(#2032) MasterMark válasza colomb2 (#2030) üzenetére


MasterMark
(Jómunkásember)

Aposztrófoztam, ez tiszta.

Igen, változó lenne a sor száma is, és a fájl is. a -v nem vágom hova jön.

(#2033) colomb2 válasza bambano (#2031) üzenetére


colomb2
(PH! kedvence)

Mukodesbeli kulonbseg van? ezt szoktam meg, kenyelmesebb

"szerintem a shell behelyettesítené, ha megfelelően írnád bele." - ez is igaz, de szerintem szebb igy atadni.

MasterMark: mind a ketto megoldas:

awk -F "/" 'NR=='"$shell_var"'{print $1}' file
awk -F "/" -v awk_var=$shell_var 'NR==awk_var{print $1}' file

Vigyázat, csalok!

(#2034) bambano válasza MasterMark (#2032) üzenetére


bambano
(Jómunkásember)
LOGOUT blog

awk-nak lehet változót definiálni parancssorból.
tehát awk -v valtozonev=ertek
amire a scriptben lehet hivatkozni, nálad konkrétan NR==változó-nál.

szerk: és akkor következik az, hogy nem bonyolítjuk szét a programot meg a shell tokenizálót, hanem írjuk úgy, ahogy illik :P :P :
~$ export sorszam=10
~$ ls -l | awk "NR==$sorszam {print $1}"

szerk2: "Mukodesbeli kulonbseg van?": természetesen van, egyrészt hamar eljuthatsz oda, hogy a fordított aposztróf nem fog működni, másrészt próbáld meg egymásba ágyazni :)

[ Szerkesztve ]

lezso6 szerint a user: rossz számtech karmája van | @netik: There is no Internet of Things. There are only many unpatched, vulnerable small computers on the Internet.

(#2035) colomb2 válasza bambano (#2034) üzenetére


colomb2
(PH! kedvence)

Meg nem volt vele problemam, egymasba agyazni pedig eddig nem probaltam. :N

ls -l | awk "NR==$sorszam {print $1}" - ide akkor kell meg egy backslash is
ls -l | awk "NR==$sorszam {print \$1}"

Vigyázat, csalok!

(#2036) MasterMark válasza colomb2 (#2033) üzenetére


MasterMark
(Jómunkásember)

Köszi szépen minden jól megy, a sok idézőjeles megoldás tetszik. :R

bambano: Köszi, nem tudtam hogy az awk nem látja azokat a változókat amit én írok be, de most már tudni fogom. :R

(#2037) Fecogame


Fecogame
(PH! kedvence)

Ha egy shell script fájlban megadok több tömörítést egy-egy sorban, pl.:

tar -zcvf /var/backup1.tar.gz /egyik
tar -zcvf /var/backup2.tar.gz /masik
tar -zcvf /var/backup3.tar.gz /harmadik

Egyszerre futnak le ezek a tömörítések? Ha igen, hogyan tudnám őket egymás után ( nem párhuzamosan ) lefuttatni. Ha lehet, akkor olyan kitétellel, hogyha pl. a "masik" hibába ütközik, akkor is fusson le a "harmadik"?

10dBi DualBand WiFi antennák, raktárról ---> https://goo.gl/QAkqQm

(#2038) Jester01 válasza Fecogame (#2037) üzenetére


Jester01
(PH! kedvence)

Azért kell külön tenni ha párhuzamosan akarod futtatni vagy hiba esetén leállni. Amit te akarsz az elvileg az alapértelmezés, nem így működött neked?

Jester

(#2039) Fecogame válasza Jester01 (#2038) üzenetére


Fecogame
(PH! kedvence)

Egy scriptben van mysql dump és tar-os tömörítés. Az utolsó mysql mentéssel és a tömörítéssel is gyannabn a másodpercben végez. A tar.gz állomány mérete ~600MB.

Ebből arra következtetek, hogy a mysql dump és a tar tömörítés egyszerre fut le. Ez többszöri tesztelés után is így lett. A scriptben első körben a mysql mentés van, majd pedig a legvégén a tömörítés.

10dBi DualBand WiFi antennák, raktárról ---> https://goo.gl/QAkqQm

(#2040) Jester01 válasza Fecogame (#2039) üzenetére


Jester01
(PH! kedvence)

Akkor maga a mysql dump lehet aszinkron (de az is gyanús), hogy egyből visszatér így a tar a még kicsi dumpot tömöríti.

Jester

(#2041) bambano válasza Fecogame (#2039) üzenetére


bambano
(Jómunkásember)
LOGOUT blog

egyébként a biztonsági mentéseknek jót szokott tenni, ha az ember tesztrendszeren visszatölti...

lezso6 szerint a user: rossz számtech karmája van | @netik: There is no Internet of Things. There are only many unpatched, vulnerable small computers on the Internet.

(#2042) Fecogame válasza bambano (#2041) üzenetére


Fecogame
(PH! kedvence)

A "jót szokott tenni" mit jelent pontosabban? :)

Jester01: Ezt hogyan lehetne kiküszöbölni? A cél az, hogy a feladatok egymás után fussanak le, ne pedig egyszerre. Ha kettőspontot rakok az egyes sorok végére az jó lehet?

[ Szerkesztve ]

10dBi DualBand WiFi antennák, raktárról ---> https://goo.gl/QAkqQm

(#2043) bambano válasza Fecogame (#2042) üzenetére


bambano
(Jómunkásember)
LOGOUT blog

a biztonsági mentés akkor ér valamit, ha vissza lehet tölteni és annak eredménye korrekt adatbázis/fájlrendszer lesz. különösen fontos, hogy a "vissza lehet tölteni" kifejezés azt is magába foglalja, hogy az illető rendszergarázda képes is végrehajtani azt.

ezt semmi más módon nem lehet kideríteni, csak ha valóban megtörténik a visszaállítás. enélkül akkor fog kiderülni, hogy nem lehet visszatölteni, amikor kellene...

ilyen apróságok is akkor derülnek ki, hogy mennyi idő a visszaállítás, mennyi ideig áll miatta az üzemeltetés, stb.

lezso6 szerint a user: rossz számtech karmája van | @netik: There is no Internet of Things. There are only many unpatched, vulnerable small computers on the Internet.

(#2044) Jester01 válasza Fecogame (#2042) üzenetére


Jester01
(PH! kedvence)

Már mondtam, ez a normális script működés, hogy megvárja a parancs végét.
Ha maga a parancs visszatér mielőtt végezne az erősen gyanús és az ellen közvetlenül nem tudsz semmit csinálni a script oldalán. Szerintem ott valami más probléma van, a mysql dump szinte kizárt, hogy visszatér mielőtt kész lenne. De nem mutattad meg a parancsot...

[ Szerkesztve ]

Jester

(#2045) bambano válasza Jester01 (#2044) üzenetére


bambano
(Jómunkásember)
LOGOUT blog

"mysql dump szinte kizárt, hogy visszatér mielőtt kész lenne.": a szabad diszkterület ellenőrzése néha csodákat tesz :)

lezso6 szerint a user: rossz számtech karmája van | @netik: There is no Internet of Things. There are only many unpatched, vulnerable small computers on the Internet.

(#2046) Fecogame válasza Jester01 (#2044) üzenetére


Fecogame
(PH! kedvence)

Időközben rájöttem, hogy ( valószínűleg a cache miatt ) a tömörítés ~1mp alatt végez. Így a beírt parancsok folyamatosan futnak le, csak meglepően gyorsan.

Más: Lehetséges olyan script-et írni linux-ra, ami adott programban begépel adott szöveget, majd leüt egy entert? Gyakorlatilag olyan megoldást keresek, ami szimulálja a karakter leütéseket, és lehetőleg script-ként futtatható.

10dBi DualBand WiFi antennák, raktárról ---> https://goo.gl/QAkqQm

(#2047) Jester01 válasza Fecogame (#2046) üzenetére


Jester01
(PH! kedvence)

screen

Jester

(#2048) bambano válasza Fecogame (#2046) üzenetére


bambano
(Jómunkásember)
LOGOUT blog

az a programtól függ, konkrétan mit szeretnél?

egyébként yes vagy except.
nem humorizálok, van ilyen program, aminek ez a neve, hogy yes.

[ Szerkesztve ]

lezso6 szerint a user: rossz számtech karmája van | @netik: There is no Internet of Things. There are only many unpatched, vulnerable small computers on the Internet.

(#2049) Fecogame válasza bambano (#2048) üzenetére


Fecogame
(PH! kedvence)

Cégen belüli spéci program. Annyi, hogy amikor megnyitom, egyből lehet is gépelni a jelszót, illetve utána az entert megnyomni. Ezt minden gépindításnál meg kell tenni, mind a négy programnál, ezt szeretném automatizálni.

Programok indítása, illetve a közöttük való várakozás már megvan, már csak gépelni kellene, illetve entert/tabot ütni.

10dBi DualBand WiFi antennák, raktárról ---> https://goo.gl/QAkqQm

(#2050) bambano válasza Fecogame (#2049) üzenetére


bambano
(Jómunkásember)
LOGOUT blog

még mindig nem az a kérdés, hogy honnan van a program, hanem az, hogy grafikus, parancssoros vagy miféle?
ha cégen belüli program, miért nem veteted ki a jelszókérést a programozókkal?

lezso6 szerint a user: rossz számtech karmája van | @netik: There is no Internet of Things. There are only many unpatched, vulnerable small computers on the Internet.

Copyright © 2000-2019 PROHARDVER Informatikai Kft.