Chinaunix首页 | 论坛 | 博客
  • 博客访问: 216831
  • 博文数量: 27
  • 博客积分: 2010
  • 博客等级: 大尉
  • 技术积分: 360
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-14 17:06
文章分类

全部博文(27)

文章存档

2011年(1)

2009年(5)

2008年(21)

我的朋友

分类:

2008-12-12 03:50:44

上帝说要有光,于是有了光。
我也模仿说要有音乐,可是没有,我得自己创造,呵呵!

最近安装了据说是Linux下支持格式最多的终端播放器Mplayer,为此大概编写了一个工具脚本,只要在终端下敲入music就可以为你播放音乐。前提是你的音乐路径为$HOME/Music或是$HOME/音乐。功能还没完工,还存在相当多的bug:-),先发上来,慢慢再改吧。
#!/bin/bash
#
# SCRIPT: music
#
# AUTHOR: lizeliang
#
# DATE: 11.5.2008
#
# REV: 1.0.A
#
# PLATFROM: Linux/Unix
#
# PORPOSE: play music only use a command
#
# REV LIST:
#    DATE: 11.11.2008
#    BY: lizeliang
#    MODIFICATION: fix some bugs:-)
#
# Initialize all variable

###############################################################################
########## DEFINE FILES AND VARIABLES HERE ####################################
###############################################################################

DEFAULT=wuti

###############################################################################
########## DEFINE FUNCTIONS HERE ##############################################
###############################################################################

#echo $DEFAULT ;debug
play_back(){
    if [ $1 = "DEFAULT" ];then
        #echo $1 ;debug
        cd $DEFAULT
        #echo $DEFAULT ;debug
    fi
    echo -e "Now we begian play back music ..."
    mplayer *.wma *mp3
}
chice_path(){
    while true
    do
        echo -e "Please input the music's path: \c"
        read path
        if [ $path == 'q' ];then
            exit 0
        fi
        for var in `ls`
        do
            if [ $var = $path ];then #a bug such when "Soft music"..!!!
                cd $path
                break
            fi
        done
        if [ $var = $path ];then
            break
        fi
        echo -e "$path :No such path ..."
    done
}
chice_path_again(){
    cd ~/Music || cd ~/音乐
    ls
    while true
    do
        echo -e "Play over, Please chice path again: \c"
        read path
        if [ $path == 'q' ];then
            exit 0
        fi
        if [ -z $path ]; then
            play_back DEFAULT
            chice_path_again
        fi    
        for var in `ls`
        do
            if [ $var = $path ];then
                cd $path
                break
            fi
        done
        if [ $var = $path ];then
            break
        elif [ $path = 'DEFAULT' ]; then #do with Enter!!!
            cd $DEFAULT
            break
        elif [ -z $path ]; then
            cd $DEFAULT
            break
        fi
        echo -e "$path :No such path ..."
    done
}

###############################################################################
########## BEGIAN OF MAIN #####################################################
###############################################################################

cd ~/Music || cd ~/音乐
echo -e "You have such music path:"
ls
while true
do
    if [ $# -eq 0 ];then
        play_back DEFAULT
        chice_path_again
    elif [ $# -eq 1 ];then
        #echo $1 ;debug
        if [ -a $1 ];then
            cd $1
            echo -e "Now we begian play back music ..."
            mplayer *.wma *mp3
        else
            echo -e "No such directory ..."
            exit 0
        fi
        echo -e "You have such music path:"
        ls
        #chice_path
        play_back
        chice_path_again
    else
        echo -e "Usage: music [dirname]: only one option.\n"
        exit 1
    fi
done
cd -
exit 0
# End of script#!/bin/bash

使用配置:
先在$HOME目录下新建一个隐藏目录.music,把该脚本复制存为music.sh到music目录下,再在终端下输入一下一行命令:
$echo "alias music=\"/bin/bash ~/.music/music.sh\"">>~/.bashrc
另外,把DEFAULT=wuti中的wuti设为你默认的播放音乐目录。
以后你就可以直接在终端上敲入music,就会有音乐为你播放。
阅读(1980) | 评论(0) | 转发(0) |
0

上一篇:Linux 包管理速查表

下一篇:模块编写<一>

给主人留下些什么吧!~~