我目前有一个从 cmus 打印位置和持续时间并将其格式化为“1/500”的功能。我遇到的问题是我希望位置和持续时间数据以分钟而不是秒(0:01/8:20 而不是 1/500)呈现,但我对如何实现没有想法这个。
目前该功能的相关部分如下所示:
print_music(){
if ps -C cmus > /dev/null; then
position=`cmus-remote -Q |
grep --text '^position' |
sed -e 's/position //' |
awk '{gsub("position ", "");print}'`
duration=`cmus-remote -Q |
grep --text '^duration' |
sed -e 's/duration //' |
awk '{gsub("duration ", "");print}'`
echo "[$position/$duration]"; else echo "";
fi
}
这将帮助您:
我试图完成完全相同的事情。使用@RubberStamp 对@glenn jackman 的回答的评论中的awk 方法,我最终得到以下显示:例如
2:07 / 4:08
注意:最后一个 sed 表达式添加了前导
0
s,以便2:7 / 4:8
正确显示2:07 / 4:08
。