为什么它每次运行都会吃掉一个字母?

为什么它每次运行都会吃掉一个字母?

当我在终端上运行此代码时:

for ((j=0;j<29;j++)); do
echo "ffmpeg -r 288 -i \""./out "$j"/out.%04d.jpg"\" -f gif ./gifs/"$j".gif;"
done

然后我将输出复制并粘贴到终端上,它每次运行都能正常工作,其余运行至少会吃掉一个字母。示例:

~/Desktop$ mpeg -r 288 -i "./out 27/out.%04d.jpg" -f gif ./gifs/27.gif;

代替:

~/Desktop$ ffmpeg -r 288 -i "./out 28/out.%04d.jpg" -f gif ./gifs/28.gif;

这是为什么?

答案1

我猜你复制了一个 Windows EOL 字符。它不会显示在你的终端中。尝试将其粘贴进去vi,你会更好地看到哪里出了问题。

相关内容