如何直接从文件夹播放音乐文件?

MEM*_*MEM 4 music nautilus

我很想在给定的文件夹中右键单击它并选择play,以播放该文件夹中的所有音乐文件(以及子文件夹,如果有的话)。

有没有简单的方法来实现这一目标?

dv3*_*0ea 7

您可以使用 Nautilus 脚本来实现这一点。

首先安装一个ruby包

sudo apt-get install ruby-1.9.1
Run Code Online (Sandbox Code Playgroud)

然后将此文本复制到文本编辑器中并将文件保存在~/.gnome2/nautilus-scripts. 称之为“播放”之类的东西。

#!/usr/bin/env ruby1.9.1
require 'find'

PLAYER = "banshee"
PLAYER_OPTIONS = ["--play-enqueued"]

def play *f
    IO.popen [PLAYER, *PLAYER_OPTIONS, *f] do |io|
        io.read
    end
end

def is_audio f
    begin
        io = IO.popen ['file', '--mime-type', f]
        op = io.read.split(' ')
        r = op[op.length-1] =~ /audio/
        io.close
        r
    rescue
    end
end

files = []

ARGV.each do |f|
    if File.directory? f
        Find.find f do |f|
            files << f if is_audio(f)
        end
    else
        files << f if is_audio(f)
    end
end

play(*files)
Run Code Online (Sandbox Code Playgroud)

~/.gnome2/nautilus-scripts在文件管理器中打开,右键单击该文件,单击属性并使其可执行。

您现在可以右键单击某些文件并选择脚本 -> 播放来播放您选择的所有音乐文件。