在 python 中使用具有多个值和相同参数的子进程
Using subprocess in python with multiple values and same argument
这是我的命令
subprocess.call(["wine","MP4Box.exe","-add",outputdir+"tmp.m4a","-itags",'name=a',"-itags", "artist=b","-itags", "album_artist=c","-itags", "album=d","-itags", "created=2034","-itags", "genre=e","-new", "tmp23.m4a"])
在输出文件中我只能得到流派,子进程只发送最后一个“-itags”value.Anyway 来完成这项工作?
谢谢
根据他们的 documentation 参数应该像这样传递
-itags tag1[:tag2]
所以你可以尝试这样做
subprocess.call(["wine","MP4Box.exe","-add",outputdir+"tmp.m4a","-itags","name=a:artist=b" ...
outputdir = "output"
subprocess.call([
"wine", "MP4Box.exe", "-add", outputdir + "/tmp.m4a",
"-itags", "name={name}:artist={artist}:album_artist={album_artist}:album={album}:created={created}:genre={genre}".format(
name="a",
artist="b",
album_artist="c",
album="d",
created=2034,
genre="e"
),
"-new", "tmp23.m4a"
])
来自docs。
请注意,标签不能包含 :
字符,因为这会破坏命令。
这是我的命令
subprocess.call(["wine","MP4Box.exe","-add",outputdir+"tmp.m4a","-itags",'name=a',"-itags", "artist=b","-itags", "album_artist=c","-itags", "album=d","-itags", "created=2034","-itags", "genre=e","-new", "tmp23.m4a"])
在输出文件中我只能得到流派,子进程只发送最后一个“-itags”value.Anyway 来完成这项工作?
谢谢
根据他们的 documentation 参数应该像这样传递
-itags tag1[:tag2]
所以你可以尝试这样做
subprocess.call(["wine","MP4Box.exe","-add",outputdir+"tmp.m4a","-itags","name=a:artist=b" ...
outputdir = "output"
subprocess.call([
"wine", "MP4Box.exe", "-add", outputdir + "/tmp.m4a",
"-itags", "name={name}:artist={artist}:album_artist={album_artist}:album={album}:created={created}:genre={genre}".format(
name="a",
artist="b",
album_artist="c",
album="d",
created=2034,
genre="e"
),
"-new", "tmp23.m4a"
])
来自docs。
请注意,标签不能包含 :
字符,因为这会破坏命令。