綾小路龍之介の素人思考

alsaplayerをバックグラウンドで起動させておく

この方法についてはよく知られている。下のようにすればいい。でもこの方法だと曲を再生するだけに長々と入力しないといけない。

$ /usr/local/bin/alsaplayer -F 24000 -i text -o oss hoge.mp3 >> /dev/null/ &

そんなわけでものぐさな僕としてはaliasとかを使ってみようと思った。でも、aliasで引数をとる場合にパイプ処理をはさむとうまくいかない。まぁ、エイリアスとは何者ぞ、と考えればそれもそのはず。調べてみると、shではパイプと引数が両方使えそうだ。でも僕はbashをつかっているので、エイリアスの変わりに関数を使ってみた。どうやらエイリアスshとbashの後方互換性のために設けられたものらしい。つまり、bashではSHOULD NOTなものらしい。ついでに終了させるためのコマンドも関数にしてみた。というわけで。

$ echo "alsaplayer () { /usr/local/bin/alsaplayer -F 24000 -i text -o oss \$* >> /dev/null &}" >> ~/.bashrc
$ echo "alsaplayerquit () { /usr/local/bin/alsaplayer --quit ;}" >> ~/.bashrc

こうしておけば、かんたんに再生と終了ができる。下のような感じ

$ alsaplayer hoge.mp3
$ alsaplayerquit

ソーシャルブックマーク

  1. はてなブックマーク
  2. Google Bookmarks
  3. del.icio.us

ChangeLog

  1. Posted: 2008-08-15T14:09:49+09:00
  2. Modified: 2008-08-15T06:51:24+09:00
  3. Generated: 2017-03-23T23:09:17+09:00