【发布时间】:2017-04-12 15:03:14
【问题描述】:
这是一个代码:
$cmd_make_sprite = '/usr/bin/gm convert /path/thumbs/video{1..353}.jpg -append /path/thumbs/sprite.jpg';
$process = new Process($cmd_make_sprite);
$process->run();
echo $process->getErrorOutput();
当我运行这个 sn-p 时,我看到了这个输出:
/usr/bin/gm 转换:无法打开文件 (/path/thumbs/video{1..353}.jpg) [没有这样的文件或目录]。
我认为这是因为 video{1..353}.jpg 替换不起作用,Symfony Process builder 将其视为常规文件名,当然不存在。
我尝试为它创建一个sprite_wrapper.sh:
#!/bin/bash
$@
并像这样使用它:
$cmd_make_sprite = 'bash sprite_wrapper.sh /usr/bin/gm convert /path/thumbs/video{1..353}.jpg -append /path/thumbs/sprite.jpg';
$process = new Process($cmd_make_sprite);
$process->run();
echo $process->getErrorOutput();
它可以工作,但我想要一个比这更干净的代码。
有没有人有一些想法如何改进它?提前致谢。
【问题讨论】:
标签: bash symfony substitution curly-braces