Szkriptek: Python, Perl, Bash, ...

String cserelo nem mukodik megfeleloen

Sziasztok!

Talaltam egy string cserelo scriptet amivel jelszavakat akarok cserelni, de ha a jelszo vegen == karakter van nem cserelni ki.

pl ha a file-ban ez van: password== akkor a csere szoveg ez lesz ==ujpassword==


@echo off
setlocal DisableDelayedExpansion
set INTEXTFILE=cserein.txt
set OUTTEXTFILE=csere_out.txt
set SEARCHTEXT=password
set REPLACETEXT=ujpassword
set OUTPUTLINE=

for /f "tokens=1,* delims=¶" %%A in ( '"type %INTEXTFILE%"') do (
SET string=%%A
setlocal EnableDelayedExpansion
SET modified=!string:%SEARCHTEXT%=%REPLACETEXT%!

> %OUTTEXTFILE% echo(!modified!endlocal)

Valakinek otlete?

szerk:

nekem az is jo ha valaki tud egy masik scriptet ami mukodhet a == karakterrel :)

[KERESEK] python távtanárt

Sziasztok,

Doktori kutatáshoz (disszertáció tézis tervezetről van szó) kell nagyobb adatokat mozgatni (fb insights exportok, cvs-ben).
Keresnék egy olyan embert, aki táv oktatás jellegben tudnék konzultálni, közösen elkészíteni pythonban scripteket, az adatok mozgatásához.

Ilyen típusú feladatokra gondolok, mint pl ez: A fb max. 180 napnyi adatot enged kiexportálni, és exportonként eltérő változókat ad ki. Ezeket a csv-ket kellene összefésülni.
Olyan embert keresek, aki otthon van pythonban (esetleg más nyelvekben, közelebbről php lehet még érdekes - más szemmel). Ha van gyakorlata közössi hálózatok (főként facebook) programozásban, az külön jó.

Én magam autodidakta módon sajátítottam el a programozás alapjait, de nem állok magas szinten. És akkor finoman fogalmaztam...

Mi hamarabb kellene kezdeni, a héten már van néhány probléma, amit meg kellene oldani.

Jelentkezni magánban, kérlek írd bele, hogy milyen órabérért vállalnád, és nagyjából mikor érsz rá.

bash osztás

Halihóóó Emberek!

Egész számot, amely byte - okat jelent, szeretnék 1024 - el osztani, hogy G, M vagy kbyte - okat kapjak. Az eredmény két tizedesjegyig kellene. Külső program (pl. bc) vagy más nyelven írt script beágyazása nélkül megoldható - e ez tisztán bash módszerrel?

Feldolgozott file nevének kiíratása

Hello.

Van egy csomó fájl amit fel kell dolgozni.
De jó lenne tudni hogy melyik szabály melyik fájlnak felel meg, szóval az eredmény listázása után/előtt kéne annak a fájlnak a neve is amiben ez az awk vagy sed megtalálta. Hogy lehet kiíratni az éppen használt fájl nevét mielőtt tovább ugrik a következőre?

[Resolved] Python + OpenCV = Kép memóriába

Van egy kis kép manipuláló műveletem, ami szépen működik is.
Leegyszerűsítve a programot, így fest:

data = numpy.fromstring(stream.getvalue(), dtype=numpy.uint8)
image = cv2.imdecode(data, 1)
cv2.putText(image,"Hello World!", (10,10), cv2.FONT_HERSHEY_SIMPLEX, 2, 255)
cv2.imwrite("/temp/image.jpg", image)

A data változó a képet tartalmazza, ami egy kamerából jön.
Az image változóba kerül a kép olyan formában, amivel az OpenCV tud rajta garázdálkodni. Rá is írok egy Hello Word szöveget.
Végül elmentem jpg formában.
Nos ez remekül működik is eddig.

Viszont én nem akarom elmenteni fájlba, hanem ugyanúgy akarom tovább tárolni, ahogy a data változóban volt az eredeti.
Na itt van a gond, mert ez sehogy nem jön össze.

Alighanem a imencode() függvényt kellene használnom, de akárhogy paraméterezem fel, mindig kiabál valami miatt.
A dokumentáció szerint három paraméter kellene neki.

Legyen:

result, encimg = cv2.imencode('.jpg', image,  [1, 90])

A result true, vagy false lehet, az encimg pedig az encodeolt kép.
Erre a kövit mondja:

result, encimg = cv2.imencode('.jpg', image,  [1, 90])
TypeError: 'bool' object is not iterable

Széttúrtam már a netet, de még csak működő példát sem találtam az encodeolásra.

Ha valakinek van ötlete rá, azt nagyon megköszönném!

 

Update:
Közben kiderítettem, hogy az imencode() bugos a cv2-ben!
Helyette javasolják a régi EncodeImage() használatát.
Mondjuk nem túl szép megoldás betölteni a cv és cv2-őt is, de hát ha nincs más, akkor így lesz.

image_raw = cv.fromarray(image)
new_image = cv.EncodeImage('.jpeg', image_raw, [1,90] )

És így már újra jpeg-ben van a kép!

unzip -l második szintű path

Sziasztok,

Az "unzip -l allomany.zip" eredményét szeretném feldolgozni sed-el. Eredményként a második szintű utat kapjam vissza. Pld.:
Archive: src.zip
Length Date Time Name
-------- ---- ---- ----
0 01-23-14 17:33 store/
0 01-23-14 17:33 store/app/
0 01-23-14 17:33 store/app/code/
0 01-23-14 17:33 store/app/code/core/
0 01-23-14 17:33 store/app/code/core/Mage/
0 01-23-14 17:33 store/app/code/core/Mage/Cms/
0 01-23-14 17:33 store/skin/
0 01-23-14 17:33 store/skin/design/
0 01-23-14 17:33 store/skin/design/frontend/
0 01-23-14 17:33 store/skin/design/frontend/default/

Az eredmény legyen a következő:
store/app/
store/skin/

Tud valaki segíteni?
Előre is köszönöm.

sed kérés

Adott egy külső merevlemez, melynek tartalmáról a tree paranccsal készítek egy listát.

tree -hnNI '*.srt|*.idx|*.sub' ${from_path} >> ${to_path}/${name}.txt

Amikor mappához ér akkor ez lesz látható: ├── [4.0K] Akció
Nos én nem értek a sed-hez, de szerintem ezzel lehetne a leghatékonyabban megoldani hogy az [4.0K] eltűnjön, és csak ez maradjon:
├── Akció
│   ├── [701M] 16 utca - 2006.avi

Minden mappának ez a mérete amely a listában található [4.0K].

Bash script írás windows-os szinti programhoz

Lényegében arról van szó, hogy minden telepíthető terminál segítségével, de akkor már egybe fűzném, egy csomagba tenném.
Nord Modular demo programjáról van szó. Előkészületben wine asio-t kell feltenni.
Telepítő letöltése: http://www.nordkeyboards.com/downloads/software/nord%20modular%20G2/Nor…
sudo apt-get install qjackctl
sudo apt-get install wine1.4
4sudo apt-get -y install wine wine-dev libjack0:i386 \qjackctl build-essential
WINEARCH=win32 winecfg - after instaling wine
Install WineAsio_Ubuntu_12.04_x64.deb which is in Wineasio.zip
(itt hozzá tenném, a deb csomagban található dolgokat elég a megfelelő helyre bemásolni, jacknél is elég.)
regsvr32 wineasio.dll
Ezután elég, ha bemásolja a wine mappába a nord fájljait.(telepítést nem igényel, anélkül is jól fut a telepített fájl)
Következő lépésként parancsikon fájl(ok) telepítése a lényeg.(ikonképet is beleértve)
Ezután egy .wineasiocfg nevezetű fájl-t kell bemásolni a \home mappába.
Tartalma:
ASIO_INPUTS=8
ASIO_OUTPUTS=16
--
Lényegében ennyit kéne beleírni egy script fájlba, ez mehetne egy tar.gz-be.
Csomagkezelőnek nem látom értelmét, mert így nem lesz multidisztribúciós. (ugye nem csak ubuntu létezik)

w3m automatizalasa

Udv!

Egy eleg komplikalt problemaval allok szemben amire nem talalom a megfelelo megoldast.

A problema alapjaban:
A cel egy weboldal letoltese percenkent, ami szep es egyszeru lenne wget-el. Ott kezdodnek a gondok, hogy az oldal elerese bejelentezest igenyel.

Jelenlegi megoldas:
Most egy eleg buta, de mukodo modszer van hasznalatban: Az oldalt behozom valami grafikus bongeszoben pl chrome, ott bejelentkezek aztan futtatok egy bonyolult scriptet percenkent amiben van wmctrl, xdotool stb. a lenyeg hogy a kepernyorol vagolapra helyezem az oldal tartalmat amit kiolvasok xclip-el ezt fajlba irom es elkezdek vele dolgozni egy c programmal. Innen latszik, hogy ezt hosszu tavon nem igazan lehet mukodtetni, foleg mivel kell neki az X.

Aztan eljutottam oda, hogy w3m-el is le tudom tolteni az oldal tartalmat, sokkal egyszerubben:
-w3m-el belepek
-betoltom egyszer az oldalt
-shift+s -> beirom a fajl nevet es mar lent is van
-varok 60 sec-et
-shift+r
-shift+s
-fajlnev beir
-varok 60 sec-et
...

ami santit, az az hogy amig X alatt egyszeruen csinalsz bill leuteseket xdotool-al addig ez nem olyan egyszeru console-on, konkretan barhol kerestem nem talaltam.

A kerdes tehat a kovetkezo:
-Hogyan toltesz le egy oldalt percenkent amihez bejelentkezes kell? (ha csak oldal forrast kapsz, az is jo, onnan kiszedem a lenyeges adatot).