mab*_*enk 5 linux shell mplayer
我想删除当前正在播放的 MP3 文件mplayer。如果可能的话,我想用mplayer命令来做。这样我就不必退出mplayer并删除此文件rm或打开另一个终端并删除那里的文件。
小智 4
是的,可能而且容易。我使用以下内容的修改版本来管理/修剪我的媒体收藏。
(1)保存以下bash脚本(rmplaying.sh)
#/bin/bash
# rmplaying.sh
# only works when exactly 1 instance of mplayer is running
function playing {
PID=`pidof mplayer`
WHICH=`which mplayer`
if [ $PID ]; then
lsof -p $PID | awk '{ if ($5=="REG" && $4!="mem" && $9)print $0 }' | grep -v "$WHICH" | grep -oP '\/.*'
fi
}
FILE="$(playing)"
echo "file: $FILE"
if [ "$FILE" ]; then
rm "$FILE" && echo "Removed '$FILE'"
fi
Run Code Online (Sandbox Code Playgroud)
(2)设置权限允许其执行
chmod +x rmplaying.sh
Run Code Online (Sandbox Code Playgroud)
(3) 编辑或创建文件“~/.mplayer/input.conf”并添加以下行
Ctrl+d run "/path/to/rmplaying.sh"
Run Code Online (Sandbox Code Playgroud)
就是这样。
要进行测试,请使用 mplayer 播放文件并按“Ctrl+d”。该文件将通过“rm”命令删除,但媒体将继续播放。
如果您从终端窗口启动 mplayer,您应该会看到消息“已删除'/path/to/media/file.mp3'”。如果您没有使用终端启动它,请检查该文件是否已从其目录中删除。
*将playing()函数移至其自己的实用程序脚本中以进行进一步定制
| 归档时间: |
|
| 查看次数: |
2027 次 |
| 最近记录: |