LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1493|回复: 3

一个用mplayer播放目录的脚本

[复制链接]
发表于 2009-12-19 23:06:50 | 显示全部楼层 |阅读模式
如果自己写一大串命令太麻烦,写了下面的脚本播放目录中所有媒体,如果格式不全可以在filetype里添加。
但有一个问题,有一次我用这个播放mp3导致alsa找不到设备,重启后才恢复正常,重启alsa-util服务也不行,,不知道是哪出问题。

  1. #/bin/bash

  2. fname=`mktemp`

  3. filetype="-o -iname *.rm \
  4. -o -iname *.wma \
  5. -o -iname *.rmvb"

  6. if [ $# == 1 ]
  7. then
  8.         find `pwd`/$1 -iname "*.mp3" $filetype > $fname
  9.         mplayer -playlist $fname
  10. fi
复制代码
发表于 2010-1-4 14:38:37 | 显示全部楼层

  1. if [[ "$#" -eq 0 || "$#" -gt 1 ]] ; then
  2. echo "Usage : $0 -songlist_file\n"
  3. FILE=songlist
  4. else
  5. FILE="$1"
  6. fi
  7. while read line  #此段是从文本中读取一行文本
  8.         do
  9.         name[$i]="$line"  #赋值给一个数组成员
  10.         #mplayer "$HOME"/song/"${name[$i]}"
  11.         let i++
  12.         done < "$HOME"/"$FILE"
  13. if [ "${#name[@]}" -eq 1 ] ; then
  14.         NAME=`basename "$name"`
  15.         mplayer  -loop 0 "$HOME"/song/"$NAME" >/dev/null 2>&1
  16. else
  17.         for i in "${name[@]}"  #${name[@]} 是取全部元素
  18.         do
  19.         mplayer  "$HOME"/song/"$i" >/dev/null 2>&1
  20.         done
  21. fi
复制代码


呵呵 我也是嫌麻烦 就写了个很简单的    不过 我的是  提前把 我所有的music  全部 软链接到我的家中 song目录里  然后  把喜欢听的歌曲 ls >> songlist  然后 ./listen songlist就OK了
不过  现在 我换xmms2了  感觉  很不错
回复 支持 反对

使用道具 举报

发表于 2010-1-4 21:59:50 | 显示全部楼层
mplayer -playlist /home/lxx/muisc/listHot -quiet -shuffle

我的脚本最傻了。。。
回复 支持 反对

使用道具 举报

发表于 2010-1-13 05:21:07 | 显示全部楼层
我刚写的。
  1. #!/bin/bash
  2. MPATH=$HOME/Music
  3. PLIST=$HOME/.mplayer/playlist.pl
  4. PLAYER=/usr/bin/mplayer
  5. case "$1" in
  6.         "--list") find $MPATH -type d|less
  7.         exit
  8.         ;;
  9.         "--fulllist") find $MPATH|less
  10.         exit
  11.         ;;
  12.         "--help") echo "'--help': show this screen;
  13. '--list': list paths;
  14. '--fulllist': list all files;
  15. empty: play last list "$PLIST";
  16. *: use * as key for file list.
  17. "
  18.         exit
  19.         ;;
  20.         "") echo "play "$FILE"";;
  21.         *) find $MPATH -iregex "^.*$1.*\(mp3\|wma\)$">$PLIST;;esac
  22. $PLAYER -playlist $PLIST -loop 0 -shuffle
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表