You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

能否通过命令行向Kodi添加目录?如何自动化该手动添加流程?

如何通过命令行向Kodi添加目录

当然可以实现!你没找到相关方法大概率是因为没关注到Kodi的JSON-RPC API——这是Kodi提供的远程控制核心接口,很多人要么习惯用GUI操作,要么用Python等语言封装调用,纯命令行的示例确实不算多,但完全可行。

第一步:开启Kodi的远程控制权限

首先得确保Kodi允许远程API调用:

  • 打开Kodi,进入「设置」→「服务」→「控制」
  • 勾选「允许通过HTTP远程控制」,默认端口是8080(也可以自定义)
  • 如果需要安全验证,设置「用户名」和「密码」(后续命令要用到)

第二步:用curl命令调用API添加目录

最直接的命令行工具就是curl,通过POST请求调用Files.AddSource方法来添加源。

示例:添加本地视频目录

curl -X POST -H "Content-Type: application/json" -d '{
    "jsonrpc": "2.0",
    "method": "Files.AddSource",
    "params": {
        "media": "video",  # 可选值:video/music/pictures
        "source": {
            "path": "/mnt/external-drive/movies",  # 你的目标目录路径
            "label": "External Movies",  # Kodi里显示的源名称
            "allowsharing": true  # 是否允许共享这个源
        }
    },
    "id": 1
}' http://localhost:8080/jsonrpc

如果设置了用户名密码

在curl命令开头加上--user参数:

curl --user 你的用户名:你的密码 -X POST -H "Content-Type: application/json" -d '{
    # 上面的JSON内容不变
}' http://localhost:8080/jsonrpc

验证添加结果

可以用Files.GetSources方法查看已添加的源,确认是否成功:

curl -X POST -H "Content-Type: application/json" -d '{
    "jsonrpc": "2.0",
    "method": "Files.GetSources",
    "params": {"media": "video"},
    "id": 1
}' http://localhost:8080/jsonrpc

额外技巧

  • 除了本地目录,还可以添加网络共享路径,比如SMB:"path": "smb://your-server/music-library",只要Kodi能识别这个路径就行
  • 如果要批量添加多个目录,可以把命令写成Shell脚本,循环处理路径列表

为什么这类问题看起来少见?

大部分自动化场景会用Python、PowerShell等语言封装JSON-RPC调用,纯命令行的curl示例确实不多,但本质都是基于同一个API。你之前搜索没找到,可能是关键词没选对——试试用「Kodi JSON-RPC add source command line」这类关键词搜索,就能找到更多相关内容了。

内容的提问来源于stack exchange,提问作者nullgeppetto

火山引擎 最新活动