kid3-cli export命令非交互式执行报错,如何构造正确语法?
问题原因
你错误将export命令和它的参数拆分为多个-c选项传递给kid3-cli。-c参数的规则是:每个-c后面必须跟一整条完整的交互式可执行命令,你之前的写法相当于分三次执行三条不完整的指令:
- 第一条:仅执行
export,没有携带任何必填参数,直接触发用法报错,程序终止 - 第二条:尝试执行
"./tags.txt",本身不属于合法指令(第一次报错后不会走到这一步) - 第三条:尝试执行
"CSV more unquoted",同样不属于合法指令(第一次报错后不会走到这一步)
你在交互式模式下能执行成功,正是因为你把export和两个参数拼成了一整条完整命令运行,符合语法要求。
正确非交互式命令写法
把整条导出命令作为单个-c参数的内容即可,终端直接执行写法:
kid3-cli -c 'export "./tags.txt" "CSV more unquoted"'
脚本中换行写法:
kid3-cli -c 'export \ "./tags.txt" \ "CSV more unquoted"'
如果偏好使用双引号包裹-c参数,需要对内部的双引号做转义:
kid3-cli -c "export \"./tags.txt\" \"CSV more unquoted\""
内容的提问来源于stack exchange,提问作者x1d
相关产品推荐
相关产品推荐

