Kezdőlap › Fórumok › Programozás › Bash script
- This topic has 437 hozzászólás, 56 résztvevő, and was last updated 13 years, 7 months telt el by
Goosfrabaa.
-
SzerzőBejegyzés
-
2008-02-16-20:46 #2053469
Köszi, mindkettő működik, azonban most tűnt fel, hogy ugyanez a gond, ha a könyvtárnévben van szóköz, olyankor mi a helyzet?
#!/bin/sh
mplayer „$1″/*.aviEz nem jó, mert nem biztos, hogy csak a könyvtárat kapja meg paraméternek, ezért van az elején a „dirname”, amivel viszont a fent említett probléma van.
2008-02-16-20:53 #2053470birno wrote:Köszi, mindkettő működik, azonban most tűnt fel, hogy ugyanez a gond, ha a könyvtárnévben van szóköz, olyankor mi a helyzet?#!/bin/sh
mplayer „$1″/*.aviEz nem jó, mert nem biztos, hogy csak a könyvtárat kapja meg paraméternek, ezért van az elején a „dirname”, amivel viszont a fent említett probléma van.
Hát, hogy mit adsz még paraméternek azt csak te tudod. De, hogy ez nem dolgozza fel csak az első paramétert az biztos.
Code:#!/bin/sh
cd $(dirname „$1”)
for i in $(ls *.avi); do
mplayer $i
doneHa pedig a script másik részében van szükség a másik paraméterre azt nem írtad.
2008-02-16-21:01 #2053471Csak egy paramétert adok meg, de az lehet a teljes elérési út fájlnévvel együtt.
Azért van így, mert ez be van szerkesztve a Thunar „egyéni műveletek” menüjébe, de ott fájlnévvel együtt adja át paraméternek.
Persze azt is lehet, hogy a könyvtáron végzem a műveletet, de gondolom csak megoldható, hogy kezelje a szóközt.2008-02-16-21:14 #2053472birno wrote:Csak egy paramétert adok meg, de az lehet a teljes elérési út fájlnévvel együtt.
Azért van így, mert ez be van szerkesztve a Thunar „egyéni műveletek” menüjébe, de ott fájlnévvel együtt adja át a paraméternek.
Persze azt is lehet, hogy a könyvtáron végzem a műveletet, de gondolom csak megoldható, hogy kezelje a szóközt.Ja mire leírtam rájöttem, hogy hogyan érted.
A Thunarban be lehet állítani azt is, hogy csak az elérési utat adja át fájl név nélkül nem?Én is a Thunart használom, és nekem is vannak beállított „egyéni műveleteim”, de én nem scriptet indítok, hanem közvetlenűl a lejátszót.
Mindjárt kipróbálom egy több avi-s mappára.2008-02-16-21:19 #2053473milfer wrote:Ja mire leírtam rájöttem, hogy hogyan érted.
A Thunarban be lehet állítani azt is, hogy csak az elérési utat adja át fájl név nélkül nem?Én is a Thunart használom, és nekem is vannak beállított „egyéni műveleteim”, de én nem scriptet indítok, hanem közvetlenűl a lejátszót.
Mindjárt kipróbálom egy több avi-s mappára.A %d adná át csak a könyvtárat, de az nekem nem működött, valszeg azért, mert a %f-et nem használtam s a %d-nél ugye azt írja, hogy „az %f-ben átadott fájlt tartalmazó könyvtár”.
Scriptesítve jobb, mert ha netán más progiba is alkalmaznám vagy terminálból indítanám valamiért, akkor egyszerűbb kezelni mint mindig beírogatni(nem csak annyiból áll a parancs amit használnék, hogy „mplayer”, csak az egyszerűség kedvéért írtam így).2008-02-16-21:28 #2053474Én eddig csak a VIDEO_TS mappára alkalmaztam, az ment is.
De pl. a több avi már nem.
Ha csak parancssorból használnád és a mappa nevében is van space akkor a paramétert is „” közé kellene tenni.
mplayer_script „A spaces mappa”De a Thunar az megnehezíti a helyzetet. Na de úgyis sz@r a tv műsor, legalább lesz mivel nyűglődni.
2008-02-16-21:36 #2053475milfer wrote:Én eddig csak a VIDEO_TS mappára alkalmaztam, az ment is.
De pl. a több avi már nem.
Ha csak parancssorból használnád és a mappa nevében is van space akkor a paramétert is „” közé kellene tenni.
mplayer_script „A spaces mappa”De a Thunar az megnehezíti a helyzetet. Na de úgyis sz@r a tv műsor, legalább lesz mivel nyűglődni.
Nekem parancssorból sem jó:
Code:~$sh /home/norbi/scripts/player „/Downloads/Movies/teszt mappa/film.avi”
/Downloads/Movies/teszt mappa
cd: 4: can’t cd to /Downloads/Movies/teszt
MPlayer 1.0rc2-4.2.3-DFSG-free (C) 2000-2007 MPlayer Team
CPU: AMD Athlon(tm) XP 2500+ (Family: 6, Model: 10, Stepping: 0)
CPUflags: MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 0
Compiled with runtime CPU detection.
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.Playing *.avi.
File not found: ‘*.avi’
Failed to open *.avi.Exiting… (End of file)
Ekkor a script így néz ki:
Code:#!/bin/sh
DIR=$(dirname „$1”)
echo $DIR
cd $DIR
mplayer *.avi2008-02-16-21:42 #2053476Állítsd be így a Thunar-t.
Egyéni műveletek, parancs mplayer %f
megjelenési feltételek könyvtárak.
Utána jobb egérgomb a mappán, vagy benne a mappában és működik a dolog.
Ha van space a mappa, vagy a fájl névben, ha nincs.2008-02-16-21:52 #2053477milfer wrote:Állítsd be így a Thunar-t.Egyéni műveletek, parancs mplayer %f
megjelenési feltételek könyvtárak.
Utána jobb egérgomb a mappán, vagy benne a mappában és működik a dolog.
Ha van space a mappa, vagy a fájl névben, ha nincs.Igen, így megy, utaltam is rá egy korábbi hszben, de most már kíváncsi lennék scriptben hogyan lehet megoldani.
Tudom, akkor társalogjak google barátommal. 🙂
Mindenesetre köszi az eddigieket!2008-02-16-21:55 #2053478Most próbáltam végig.
Tehát :
xine %f
vlc %f
mplayer %f/*és így már minden megy.
-
SzerzőBejegyzés
- Be kell jelentkezni a hozzászóláshoz.
legutóbbi hsz