sh/bash/dash/ksh/zsh等Shell脚本
-
qqttdh
- 帖子: 896
- 注册时间: 2007-07-20 22:15
#16
帖子
由 qqttdh » 2008-11-08 22:27
xiooli 写了:试了下,不错的说哦,不过建议把几个脚本集成到一块,至少那几个控制的脚本集成到一起。
btw:你说的添加gnome-panel是什么意思?
我的做法是:
下一首, 暂停 关联到快捷键 (没做上一个的脚本)
所有控制脚本都添加到面板启动器,有时会懒得动键盘
这样就相当于整个桌面本身就是控制器。。。
。。。然后如果脱离面板,集成在一起的话,即使用zenity貌似也有些。。困难
需要自己编gtk程序。。。(还没学会

)
再更新下列表编辑 list_edit
代码: 全选
#!/bin/sh
if [ -s /dev/shm/mnum ];then
read t < '/dev/shm/mnum'
else
exit
fi
exec < /dev/shm/mqueue
i=1
while read line
do
a=`echo ${line##*\/}|sed 's/\ /\_/g'`
lab=TRUE
list="$list $lab $a"
i=$(($i + 1))
done
c="`zenity --list --checklist --height=350 --width=300 --column "曲目" --column "曲名" $list`"
if ! [ $c ];then exit;fi
if [ -e /dev/shm/mqueue_bak ];then
rm /dev/shm/mqueue_bak
fi
exec < /dev/shm/mqueue
i=1
tip=0
while read line
do
st=`echo ${line##*\/}|sed 's/\ /\_/g;s/\[/\\\[/g;s/\]/\\\]/g'`
sc="`echo "$c"|grep -n "$st"|sed -n 1p|awk -F : '{print $1}'`"
if [ $sc ];then
song="`awk 'NR=='$i'' /dev/shm/mqueue`"
echo "$song" >> /dev/shm/mqueue_bak
fi
#check if the list changed
if ! [ $sc ];then tip=1;fi
i=$(($i + 1))
done
if [ -s /dev/shm/mqueue_bak ];then
mv /dev/shm/mqueue_bak /dev/shm/mqueue
#bakup play list
if [ $tip = 1 ];then
cp /dev/shm/mqueue ~/.mqueue
cp /dev/shm/mnum ~/.mnum
fi
#echo quit > /dev/shm/mfifo
fi
-
xiooli
- 帖子: 6956
- 注册时间: 2007-11-19 21:51
- 来自: 成都
-
联系:
#17
帖子
由 xiooli » 2008-11-08 23:03
明白咯,呵呵,奉献几个图标好放panel上:
ps:用easystroke可以用鼠标手势来控制呢。
-
附件
-

- gtk-media-rewind-rtl.png (1.03 KiB) 查看 2515 次
-

- gtk-media-rewind-ltr.png (1 KiB) 查看 2515 次
-

- gtk-media-play-ltr.png (701 Bytes) 查看 2515 次
-

- gtk-media-pause.png (430 Bytes) 查看 2516 次
-
qqttdh
- 帖子: 896
- 注册时间: 2007-07-20 22:15
#18
帖子
由 qqttdh » 2008-11-09 9:25
版本:0.6
(主体没多大变化,将队列循环变成可选了,默认循环)
代码: 全选
#!/bin/sh
list_out ()
{
while [ $# -gt 0 ]; do
for i in $@; do
if [ `echo "$1"|grep -vicE '(.jpg)|(.srt)'` = 0 ];then break;fi
d="`pwd`"
if [ `grep -c "${d##*\/}/$1" /dev/shm/mqueue` != 0 ];then break;fi
echo "$d/$1" >> /dev/shm/mqueue
break
done
shift
done
}
bakup_list ()
{
#bakup play list
if [ -s /dev/shm/mqueue ];then
cp /dev/shm/mqueue ~/.mqueue
cp /dev/shm/mnum ~/.mnum
elif [ -s ~/.mqueue ];then
cp ~/.mqueue /dev/shm/mqueue
cp ~/.mnum /dev/shm/mnum
fi
}
#################################################
# PROGRAMME
if [ $# != 0 ];then
#生成和添加播放队列
if [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" = 0 ];then
if [ -e /dev/shm/mqueue ];then rm /dev/shm/mqueue;fi
list_out "$@"
else
list_out "$@"
bakup_list
exit
fi
elif [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" != 0 ];then
zenity --info --text="队列已存在" &
exit
fi
bakup_list
#排除异己:)
if [ "`ps aux |grep '/player'|grep -vcE '(grep)|(player_now)|(file:)'`" != 2 ];then
kill -9 `ps aux |grep '/player'|grep -vE '(grep)|(player_now)|(file:)'|awk {'print $2'}|grep -v $$`
fi
#建立/清理 管道
if [ -e /dev/shm/mfifo ];then
if [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" != 0 ];then
echo quit > /dev/shm/mfifo
sleep 0.1
if [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" != 0 ];then
kill -9 `ps aux |grep ' mplayer '|grep -v grep|grep "/dev/shm/mfifo"|awk {'print $2'}`
fi
fi
else
mkfifo /dev/shm/mfifo
fi
sleep 0.5
i=1
if [ -e "$1" ];then
echo $i > /dev/shm/mnum
echo 0 > /dev/shm/mstat
mplayer "$1" -input file=/dev/shm/mfifo
echo 3 > /dev/shm/mstat
i=2
elif [ -s /dev/shm/mnum ];then
read i < '/dev/shm/mnum'
fi
#################################################
# MAIN PROGRAMME
MAX=0
s=0
while [ ture ]; do
#error manage
if ! [ -e /dev/shm/mqueue ];then exit;fi;
if ! [ -s /dev/shm/mqueue ];then rm /dev/shm/mqueue;exit;fi;
##**##check1
if [ -s /dev/shm/mnum ];then
read t < '/dev/shm/mnum'
ts=$(($t + 1))
if [ $ts != $i ];then i=$t;fi;
fi
#check2
MAX=`grep -c "" /dev/shm/mqueue`
if [ $i -gt $MAX ];then
#是否循环列表 默认循环
if [ -s /dev/shm/mlol ];then
read lo < '/dev/shm/mlol'
if [ $lo = 0 ];then
exit
else
i=1;
fi
else
i=1;
fi
fi;
#
sone="`awk 'NR=='$i'' /dev/shm/mqueue`"
echo $i > /dev/shm/mnum
#echo "$sone"
echo 0 > /dev/shm/mstat
mplayer "$sone" -input file=/dev/shm/mfifo;
echo 3 > /dev/shm/mstat
#间隔时间
sleep 5.5
#check3
if [ -s /dev/shm/mloop ];then
read s < '/dev/shm/mloop'
fi
if [ $s = 0 ];then i=$(($i + 1));fi
done
exit
-
linee
- 帖子: 86
- 注册时间: 2007-08-09 14:29
#19
帖子
由 linee » 2008-11-26 15:38
再增加多个列表就完美了。
-
qqttdh
- 帖子: 896
- 注册时间: 2007-07-20 22:15
#20
帖子
由 qqttdh » 2008-11-26 22:48
linee 写了:再增加多个列表就完美了。
主脚本完成。。。
代码: 全选
#!/bin/sh
list_out ()
{
while [ $# -gt 0 ]; do
for i in $@; do
if [ `echo "$1"|grep -vicE '(.jpg)|(.srt)'` = 0 ];then break;fi
d="`pwd`"
if [ `grep -c "${d##*\/}/$1" ~/.mplayer/plist/$list_name` != 0 ];then break;fi
if ! [ -e ~/.mplayer/plist ];then
mkdir ~/.mplayer/plist
fi
echo "$d/$1" >> ~/.mplayer/plist/$list_name
break
done
shift
done
}
#################################################
# PROGRAMME
if [ $# != 0 ];then
#生成和添加播放队列
if [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" = 0 ];then
#if [ -e ~/.mplayer/plist/$list_name ];then rm ~/.mplayer/plist/$list_name;fi
list_name=`zenity --entry --text="列表名称"`
echo $list_name > ~/.mplayer/list_name
list_out "$@"
else
read list_name < ~/.mplayer/list_name
list_out "$@"
exit
fi
elif [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" != 0 ];then
zenity --info --text="队列已存在" &
exit
else
read list_name < ~/.mplayer/list_name
fi
if [ -s ~/.mplayer/mnum ];then
cp ~/.mplayer/mnum /dev/shm/mnum
fi
#排除异己:)
if [ "`ps aux |grep '/player'|grep -vcE '(grep)|(player_now)|(file:)'`" != 2 ];then
kill -9 `ps aux |grep '/player'|grep -vE '(grep)|(player_now)|(file:)'|awk {'print $2'}|grep -v $$`
fi
#建立/清理 管道
if [ -e /dev/shm/mfifo ];then
if [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" != 0 ];then
echo quit > /dev/shm/mfifo
sleep 0.1
if [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" != 0 ];then
kill -9 `ps aux |grep ' mplayer '|grep -v grep|grep "/dev/shm/mfifo"|awk {'print $2'}`
fi
fi
else
mkfifo /dev/shm/mfifo
fi
sleep 0.5
i=1
if [ -e "$1" ];then
echo $i > /dev/shm/mnum
echo 0 > /dev/shm/mstat
mplayer "$1" -input file=/dev/shm/mfifo
echo 3 > /dev/shm/mstat
i=2
elif [ -s /dev/shm/mnum ];then
read i < '/dev/shm/mnum'
fi
#################################################
# MAIN PROGRAMME
MAX=0
s=0
while [ ture ]; do
#error manage
if ! [ -e ~/.mplayer/plist/$list_name ];then zenity --info --text="列表为空" & exit;fi;
if ! [ -s ~/.mplayer/plist/$list_name ];then zenity --info --text="列表为空" & exit;fi;
##**##check1
if [ -s /dev/shm/mnum ];then
read t < '/dev/shm/mnum'
ts=$(($t + 1))
if [ $ts != $i ];then i=$t;fi;
fi
#check2
MAX=`grep -c "" ~/.mplayer/plist/$list_name`
if [ $i -gt $MAX ];then
#是否循环列表 默认循环
if [ -s /dev/shm/mlol ];then
read lo < '/dev/shm/mlol'
if [ $lo = 0 ];then
exit
else
i=1;
fi
else
i=1;
fi
fi;
#
sone="`awk 'NR=='$i'' ~/.mplayer/plist/$list_name`"
echo $i > /dev/shm/mnum
echo $i > ~/.mplayer/mnum
#echo "$sone"
echo 0 > /dev/shm/mstat
mplayer "$sone" -input file=/dev/shm/mfifo;
stat=$?
echo 3 > /dev/shm/mstat
#间隔时间
if [ $stat = 0 ];then
sleep 5.5
fi
#check3
if [ -s /dev/shm/mloop ];then
read s < '/dev/shm/mloop'
fi
if [ $s = 0 ];then i=$(($i + 1));fi
done
exit
-
linee
- 帖子: 86
- 注册时间: 2007-08-09 14:29
#21
帖子
由 linee » 2008-11-27 0:56
qqttdh 写了:linee 写了:再增加多个列表就完美了。
主脚本完成。。。
期待其它配套散件。
-
qqttdh
- 帖子: 896
- 注册时间: 2007-07-20 22:15
#22
帖子
由 qqttdh » 2008-11-27 13:18
linee 写了:qqttdh 写了:linee 写了:再增加多个列表就完美了。
主脚本完成。。。
期待其它配套散件。
验证完毕。。。已可以使用。。。
注:主脚本作了适当修改
代码: 全选
6,11c6,11
< if [ `echo "$1"|grep -vicE '(.jpg)|(.srt)'` = 0 ];then break;fi
< d="`pwd`"
< if [ `grep -c "${d##*\/}/$1" ~/.mplayer/plist/$list_name` != 0 ];then break;fi
< if ! [ -e ~/.mplayer/plist ];then
< mkdir ~/.mplayer/plist
< fi
---
> if [ `echo "$1"|grep -vicE '(.jpg)|(.srt)'` = 0 ];then break;fi
> d="`pwd`"
> if [ `grep -c "${d##*\/}/$1" ~/.mplayer/plist/$list_name` != 0 ];then break;fi
> if ! [ -e ~/.mplayer/plist ];then
> mkdir ~/.mplayer/plist
> fi
22,32c22,32
< #生成和添加播放队列
< if [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" = 0 ];then
< #if [ -e ~/.mplayer/plist/$list_name ];then rm ~/.mplayer/plist/$list_name;fi
< list_name=`zenity --entry --text="列表名称"`
< echo $list_name > ~/.mplayer/list_name
< list_out "$@"
< else
< read list_name < ~/.mplayer/list_name
< list_out "$@"
< exit
< fi
---
> #生成和添加播放队列
> if [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" = 0 ];then
> #if [ -e ~/.mplayer/plist/$list_name ];then rm ~/.mplayer/plist/$list_name;fi
> list_name=`zenity --entry --text="列表名称"`
> echo $list_name > ~/.mplayer/list_name
> list_out "$@"
> else
> read list_name < ~/.mplayer/list_name
> list_out "$@"
> exit
> fi
34,35c34,35
< zenity --info --text="队列已存在" &
< exit
---
> zenity --info --text="队列已存在" &
> exit
37,50c37
< if [ -e ~/.mplayer/list_name ];then
< read list_name < ~/.mplayer/list_name
< fi
< fi
<
<
< if ! [ $list_name ];then
< list_name="`ls ~/.mplayer/plist -1|sed 1q`"
< echo $list_name > ~/.mplayer/list_name
< if ! [ $list_name ];then
< list_name=default
< #zenity --info --text="无列表" &
< exit
< fi
---
> read list_name < ~/.mplayer/list_name
58,59c45,46
< if [ "`ps aux |grep -E '(/player)|(/pause)'|grep -vcE '(grep)|(player_now)|(file:)'`" != 2 ];then
< kill -9 `ps aux |grep '/player'|grep -vE '(grep)|(player_now)|(file:)'|awk {'print $2'}|grep -v $$`
---
> if [ "`ps aux |grep '/player'|grep -vcE '(grep)|(player_now)|(file:)'`" != 2 ];then
> kill -9 `ps aux |grep '/player'|grep -vE '(grep)|(player_now)|(file:)'|awk {'print $2'}|grep -v $$`
63,69c50,56
< if [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" != 0 ];then
< echo quit > /dev/shm/mfifo
< sleep 0.1
< if [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" != 0 ];then
< kill -9 `ps aux |grep ' mplayer '|grep -v grep|grep "/dev/shm/mfifo"|awk {'print $2'}`
< fi
< fi
---
> if [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" != 0 ];then
> echo quit > /dev/shm/mfifo
> sleep 0.1
> if [ "`ps aux |grep ' mplayer '|grep -v grep|grep -c "/dev/shm/mfifo"`" != 0 ];then
> kill -9 `ps aux |grep ' mplayer '|grep -v grep|grep "/dev/shm/mfifo"|awk {'print $2'}`
> fi
> fi
71c58
< mkfifo /dev/shm/mfifo
---
> mkfifo /dev/shm/mfifo
79,83c66,70
< echo $i > /dev/shm/mnum
< echo 0 > /dev/shm/mstat
< mplayer "$1" -input file=/dev/shm/mfifo
< echo 3 > /dev/shm/mstat
< i=2
---
> echo $i > /dev/shm/mnum
> echo 0 > /dev/shm/mstat
> mplayer "$1" -input file=/dev/shm/mfifo
> echo 3 > /dev/shm/mstat
> i=2
85c72
< read i < '/dev/shm/mnum'
---
> read i < '/dev/shm/mnum'
92,139c79,121
< #error manage
< #if ! [ -e ~/.mplayer/plist/$list_name ];then zenity --info --text="列表为空" & exit;fi;
< if ! [ -s ~/.mplayer/plist/$list_name ];then zenity --info --text="列表为空" & exit;fi;
< ##**##check1
< if [ -s /dev/shm/mnum ];then
< read t < '/dev/shm/mnum'
< ts=$(($t + 1))
< if [ $ts != $i ];then i=$t;fi;
< fi
< #check2
< MAX=`grep -c "" ~/.mplayer/plist/$list_name`
< if [ $i -gt $MAX ];then
< #是否循环列表 默认循环
< if [ -s /dev/shm/mlol ];then
< read lo < '/dev/shm/mlol'
< if [ $lo = 0 ];then
< exit
< else
< i=1;
< fi
< else
< i=1;
< fi
<
< fi;
< #
< sone="`awk 'NR=='$i'' ~/.mplayer/plist/$list_name`"
< echo $i > /dev/shm/mnum
< echo $i > ~/.mplayer/mnum
< #echo "$sone"
< echo 0 > /dev/shm/mstat
< mplayer "$sone" -input file=/dev/shm/mfifo;
< stat=$?
< echo 3 > /dev/shm/mstat
< #间隔时间
< if [ $stat = 0 ];then
< sleep 5.5
< else
<
< if [ -s ~/.mplayer/list_name ];then
< read list_name < ~/.mplayer/list_name
< fi
< fi
< #check3
< if [ -s /dev/shm/mloop ];then
< read s < '/dev/shm/mloop'
< fi
< if [ $s = 0 ];then i=$(($i + 1));fi
---
> #error manage
> if ! [ -e ~/.mplayer/plist/$list_name ];then zenity --info --text="列表为空" & exit;fi;
> if ! [ -s ~/.mplayer/plist/$list_name ];then zenity --info --text="列表为空" & exit;fi;
> ##**##check1
> if [ -s /dev/shm/mnum ];then
> read t < '/dev/shm/mnum'
> ts=$(($t + 1))
> if [ $ts != $i ];then i=$t;fi;
> fi
> #check2
> MAX=`grep -c "" ~/.mplayer/plist/$list_name`
> if [ $i -gt $MAX ];then
> #是否循环列表 默认循环
> if [ -s /dev/shm/mlol ];then
> read lo < '/dev/shm/mlol'
> if [ $lo = 0 ];then
> exit
> else
> i=1;
> fi
> else
> i=1;
> fi
>
> fi;
> #
> sone="`awk 'NR=='$i'' ~/.mplayer/plist/$list_name`"
> echo $i > /dev/shm/mnum
> echo $i > ~/.mplayer/mnum
> #echo "$sone"
> echo 0 > /dev/shm/mstat
> mplayer "$sone" -input file=/dev/shm/mfifo;
> stat=$?
> echo 3 > /dev/shm/mstat
> #间隔时间
> if [ $stat = 0 ];then
> sleep 5.5
> fi
> #check3
> if [ -s /dev/shm/mloop ];then
> read s < '/dev/shm/mloop'
> fi
> if [ $s = 0 ];then i=$(($i + 1));fi
-
linee
- 帖子: 86
- 注册时间: 2007-08-09 14:29
#23
帖子
由 linee » 2008-11-27 15:37
qqttdh 写了:linee 写了:qqttdh 写了:linee 写了:再增加多个列表就完美了。
主脚本完成。。。
期待其它配套散件。
验证完毕。。。已可以使用。。。
mplayer_queue_player.09.tar.bz2
注:主脚本作了适当修改
下了mplayer_queue_player.09.tar.bz2,使用不正常啊,初步发现:
player不能播放默认播放列表(上次播放列表);
player_now能添加但player会退出;
next和pervious总会回到正在播放曲目的开始,就是说不跳前也不跳后;
choice_list和choice_sone也会造成player退出;
大约pause和stop是正常的。
还有,目前只能加列表,希望能增加删除列表功能。
-
qqttdh
- 帖子: 896
- 注册时间: 2007-07-20 22:15
#24
帖子
由 qqttdh » 2008-11-27 17:35
下了mplayer_queue_player.09.tar.bz2,使用不正常啊,初步发现:
player不能播放默认播放列表(上次播放列表);
player_now能添加但player会退出;
next和pervious总会回到正在播放曲目的开始,就是说不跳前也不跳后;
choice_list和choice_sone也会造成player退出;
大约pause和stop是正常的。
还有,目前只能加列表,希望能增加删除列表功能。
忘了测试。。。列表名中带空格的情况
需要播放以前的列表
cp ~/.mqueue ~/.mplayer/plist/mqueue
删除列表存放在 .mplayer/plist/ 目录下
-
qqttdh
- 帖子: 896
- 注册时间: 2007-07-20 22:15
#25
帖子
由 qqttdh » 2008-11-27 18:34
添加了很多必要和非必要的引号。。。
播放列表应该能包含任意字符了。。。
列表选择采用了较保守的做法。。。
。。。其余见下贴
-
qqttdh
- 帖子: 896
- 注册时间: 2007-07-20 22:15
#26
帖子
由 qqttdh » 2008-11-27 22:17
增加删除或重命名列表脚本。。。manage_list
···如意外操作可到列表目录(./mplayer/plist)下从.xx.bak文件恢复
增加一个添加曲目或列表的独立脚本。。。add_new_list
发现一个小问题。。。和个别中文有关。。。不过对使用的影响不大
-
qqttdh
- 帖子: 896
- 注册时间: 2007-07-20 22:15
#27
帖子
由 qqttdh » 2008-11-28 7:32
经查。。。发现问题出在sh重定向中文文件上。。。
将部分脚本运行shell改成bash即可
-
qqttdh
- 帖子: 896
- 注册时间: 2007-07-20 22:15
#28
帖子
由 qqttdh » 2008-11-28 13:36
一楼那个(09版)重新采用了sh,
并对主脚本的结构作了相应调整(重新采取了08版的一些策略)
控制脚本也作了相应调整。。。
可能还修复了0.9.3中的一些小问题。。。
0.9.X中的stop可能管得太多了。。。09中取消了部分停止功能
但加入了停止所有mplayer的对话(位于exit之后,默认未启动)
。。。 。。。
附上新增的列表管理脚本mamage_list
代码: 全选
#!/bin/sh
#################################################
# PROGRAMME
while [ 1 ];do
echo "`ls ~/.mplayer/plist -1`" > /dev/shm/mlists
if(zenity --question --text="需要删除列表?")then
exec < /dev/shm/mlists
lab=FALSE
while read line
do
a="`echo "${line##*\/}"|sed 's/\ /\_/g'`"
list="$list $lab $a"
done
c=`zenity --list --checklist --height=350 --width=300 --column "选项" \
--column "列表名" --text "选择删除列表" $list`
unset list
exec < /dev/shm/mlists
while read line
do
st="`echo "$line"|sed 's/\ /\_/g;s/\[/\\\[/g;s/\]/\\\]/g'`"
sc="`echo "$c"|grep -n "$st"|sed -n 1p|awk -F : '{print $1}'`"
if [ "$sc" ];then
mv ~/.mplayer/plist/"$line" ~/.mplayer/plist/."$line".bak
fi
done
else
exec < /dev/shm/mlists
lab=FALSE
while read line
do
a="`echo "${line##*\/}"|sed 's/\ /\_/g'`"
list="$list $lab $a"
done
list="$list TRUE"
c=`zenity --list --radiolist --height=350 --width=300 --column "选项" \
--column "列表名" --text "选择重命名列表" $list`
unset list
if [ "$c" ]&&[ x"$c" != x"(null)" ];then
list_name_new=`zenity --entry --text="请输入列表名称"`
fi
exec < /dev/shm/mlists
while read line
do
st="`echo "$line"|sed 's/\ /\_/g;s/\[/\\\[/g;s/\]/\\\]/g'`"
sc="`echo "$c"|grep -n "$st"|sed -n 1p|awk -F : '{print $1}'`"
if [ "$sc" ]&&[ $list_name_new ];then
mv ~/.mplayer/plist/"$line" ~/.mplayer/plist/"$list_name_new"
fi
done
fi
#if [ "$list_name" ]&&[ x"$list_name" != x"(null)" ];then break;fi
if(zenity --question --text="退出?")then exit;fi
unset c list_name_new
done
-
linee
- 帖子: 86
- 注册时间: 2007-08-09 14:29
#29
帖子
由 linee » 2008-11-29 0:17
qqttdh 写了:一楼那个(09版)重新采用了sh,
并对主脚本的结构作了相应调整(重新采取了08版的一些策略)
控制脚本也作了相应调整。。。
可能还修复了0.9.3中的一些小问题。。。
0.9.X中的stop可能管得太多了。。。09中取消了部分停止功能
但加入了停止所有mplayer的对话(位于exit之后,默认未启动)
。。。 。。。
add_new_list有问题:若选已有列表会把以前的内容清空。
add_new_list,player和player_now如果不以nautilus-Scripts方式运行的话(比如:Open with another Application...)列表里的路径前面会多出这么一串字符:/home/(用户名)/。
-
qqttdh
- 帖子: 896
- 注册时间: 2007-07-20 22:15
#30
帖子
由 qqttdh » 2008-11-29 9:17
linee 写了:qqttdh 写了:一楼那个(09版)重新采用了sh,
并对主脚本的结构作了相应调整(重新采取了08版的一些策略)
控制脚本也作了相应调整。。。
可能还修复了0.9.3中的一些小问题。。。
0.9.X中的stop可能管得太多了。。。09中取消了部分停止功能
但加入了停止所有mplayer的对话(位于exit之后,默认未启动)
。。。 。。。
add_new_list有问题:若选已有列表会把以前的内容清空。
add_new_list,player和player_now如果不以nautilus-Scripts方式运行的话(比如:Open with another Application...)列表里的路径前面会多出这么一串字符:/home/(用户名)/。
。。。add_new_list在测试时被漏掉了。。。
其中一段处理列表的代码放到了生成列表的循环里。。。
已经被修正。。。
又在主脚本中添加了一些出错处理机制。。。
至于第二个问题。。。主要由于两种不同的运行方式得到的$1不同。。。
加入了适当的处理机制。。。