AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 914875
Accepted
Richard L
Richard L
Asked: 2018-06-03 00:05:02 +0800 CST2018-06-03 00:05:02 +0800 CST 2018-06-03 00:05:02 +0800 CST

Bash脚本ffmpeg pic到视频不起作用但在命令行中

  • 772

这可以在命令行中将 jpg 序列转换为视频。

cat *.jpg  | ffmpeg -f image2pipe -framerate 5 -i - -s 1280x720  ./HD720_out.mp4    

但在包含以下内容的可执行脚本 temp.sh 中不起作用(第一个 jpg 除外):

eval  cat "$1"  | ffmpeg -f image2pipe -framerate 5 -i - -s 1280x720  "./HD720_out.mp4" 

例如./temp.sh *.jpg ,仅将第一个文件提供给视频,而不是序列。我究竟做错了什么?命令行完美运行。

video
  • 1 1 个回答
  • 405 Views

1 个回答

  • Voted
  1. Best Answer
    HBruijn
    2018-06-03T01:03:53+08:002018-06-03T01:03:53+08:00

    简化:$1扩展为脚本的第一个命令行参数。

    但在您的脚本解释运行 temp.sh 的 shell 之前,将首先扩展星号*in ./temp.sh *.jpg,从而有效地生成命令行:

    ./temp.sh first.jpg second.jpg third.jpg 
                \
                 \_  $1
    

    你有两种选择来解决这个问题。第一个(也是首选):

    cat "$@" | ... 
    

    将只使用所有命令行参数,而不仅仅是第一个。你不需要eval这个,也不应该使用它。

    第二个(eval发挥作用的地方):

    eval cat "$1"  |  
    

    在使用带引号的参数调用脚本以避免扩展时:

     ./temp.sh '*.jpg' 
    
    • 2

相关问题

  • Sharepoint Wiki:除了图像和超链接之外,你能嵌入任何东西吗?具体来说,.swf?

  • 视频直播中的服务器资源

  • Windows 系统管理 - 视频或播客 [关闭]

  • 无需重启即可远程更改 Windows 屏幕分辨率?

  • Vista 上的 VNC

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve