Portál AbcLinuxu, 11. května 2025 06:39

Dotaz: prevod souboru z png na pnm

22.12.2007 16:38 Frantisek Groulik
prevod souboru z png na pnm
Přečteno: 572×
Odpovědět | Admin
potreboval bych napsal skriptik na prelozeni souboru PNG (obr.png) na PNM (obr.pnm)...napsal jsem toto

#!/bin/bash

#$ -cwd

/usr/bin/pngtopnm obr.png > obr.pnm

ale nejak mi to nejede...hlasi to, ze na radce 3 je chyba No such file or directory...

...ale pritom kdyz pouziju prikaz pngtopnm normalne v shellu tak funguje v pohode...
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

22.12.2007 20:41 sweto | skóre: 20
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
Odpovědět | | Sbalit | Link | Blokovat | Admin
Mozno sa pri spusteni skriptu niekde strati cast premennej $PATH a nevie najst tie obrazky.
Skus /usr/bin/pngtopnm ./obr.png > ./obr.pnm resp. celu cestu k vstupnemu (aj vystupnemu) obrazku.
23.12.2007 10:43 Frantisek Groulik
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
diky, ale nepomaha...fakt nevim co s tim...a nemuze byt problem nekde v nejakych knihovnach? to by se asi museli nahrat nove, co?
23.12.2007 12:05 sweto | skóre: 20
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
V knizniciach by problem nemal byt, kedze si pisal ze zo shellu to ide.
Co presne robi riadok: #$ -cwd ???
26.12.2007 23:47 Frantisek Groulik
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
#$ -cwd zajistuje a ponechava aktualnost adresare ve kterem je umisten soubor skriptu
23.12.2007 13:07 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
Odpovědět | | Sbalit | Link | Blokovat | Admin
ale nejak mi to nejede...hlasi to, ze na radce 3 je chyba No such file or directory...
...ale pritom kdyz pouziju prikaz pngtopnm normalne v shellu tak funguje v pohode...

A není teda umístěn někde jinde než v /usr/bin (which pngtopnm). A jen tak mimochodem - tohle se jeví spíše jako chyba na úrovni shellu, protože chybová hláška od pngtopnm vypadá jinak (např. pokud se spustí s neexistujicím souborem).

I am always ready to learn although I do not always like to be taught. (W. Churchill)
23.12.2007 21:44 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
Odpovědět | | Sbalit | Link | Blokovat | Admin
Já bych na to šel jen tak ve stručnost takhle:
#!/bin/bash 
pngtopnm $1 > ${1%[Pp][Nn][Gg]}pnm
Neřeším žádnou kontrolu typu souboru, přepisování a já nevím co ještě..
23.12.2007 21:46 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
Použití následující..
user@stroj:~$ ./test.sh obr.png
26.12.2007 23:49 Frantisek Groulik
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
a co presne prosimte znamena tohle {1%[Pp][Nn][Gg]}? jako myslim postupne ty jednotlive znacky, zavorky a tak...diky
David Watzke avatar 27.12.2007 02:23 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
[tohle] je množina znaků t, o, h, l, e (jako regulární výraz). V bashi je platný tohle: ${1%neco} - to z proměnný $1 na konci utrhne řetězec "neco" (pokud tam je). No a bash umí tímto způsobem utrhnout i množinu, takže ať už je na konci "png", "Png", "pNG", ..., tak to bash ukousne :-)
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
28.12.2007 09:55 Frantisek Groulik
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
super, diky za vysvetleni...no, a kdybych teda treba napsal tohle: "%02i" $[5*$i], tak to bude delat co? omlouvam se za ty blby dotazy, ale ja to fakt nevim....
28.12.2007 10:50 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
Koukni se třeba sem na wikibooks jsou tam i nějaké příklady. Řešit jednotlivé triviální věci případy, na to fakt není čas. Docela pěkně si můžeš regulární výrazy natrénovat v editoru nedit.
28.12.2007 12:02 Frantisek Groulik
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
ok, diky...mrknu na to...

ale kdyby se nekomu chtelo odpovedet primo tady, tak se urcite nebudu zlobit...slibuju, ze je to muj posledni dotaz ohledne bashe...DEKUJU!!!
28.12.2007 12:29 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
Dost dobře jsem nepochopil ten zápis, ale $[] je nesmysl, protože (jak se můžeš dočíst na té wikibooks) hranaté závorky jsou synonymem pro test. Takže interpretace by znamenala pravděpodobně - použij proměnnou s názvem odpovídajícím výsledku testu (ale to je opravdu jen dohad). Jako regulární výraz by to pak bylo celé divné, protože hvězdička i string mají u regulárních výrazů svůj význam.
28.12.2007 13:11 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
ale $[] je nesmysl

IMHO je to bashovské rozšíření pro vyhodnocení aritmetického výrazu (jako $(( ... ))).

I am always ready to learn although I do not always like to be taught. (W. Churchill)
28.12.2007 14:05 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm
Jo, máte pravdu. V takovém případě je pak obsah závorky vyhodnocen jako pětinásobek hodnoty proměnné i.
28.12.2007 14:43 pakanek | skóre: 28 | Vyškov
Rozbalit Rozbalit vše Re: prevod souboru z png na pnm

Zkus se třeba podívat co o regulárních výrazech napsal Pavel Satrapa.

Všechno dobré je pro něco zlé.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.