脚本参数,包含调用mediainfo的空格

没有人

我想创建一个小的shell脚本,该脚本将告诉我视频的持续时间,该视频的文件名作为参数传递给它。就像这样:

$ script_name "file name with spaces.webm" # or any other media file extension

脚本文件类似于

#/bin/bash
SECRET_SAUCE_USING_$1 | mediainfo | grep Duration | sort -u
# maybe SECRET_SAUCE_USING_$1 | xargs -0 mediainfo . . .

在命令行上,这是有效的方法,也是我希望脚本执行的操作:

$ mediainfo file\ name\ with\ spaces.webm | grep Duration | sort -u

我已经尝试使用类似的东西

echo "$1" | sed 's/ /\\ /g' # piped to mediainfo . . .

将文件名中的空格更改为'\'字符对(不带引号)。回声... | sed ...部分有效,但mediainfo barfs

echo "$1" | tr ' ' '\000' | xargs -0 mediainfo . . .

将空格更改为null并获取xargs调用文件名中包含空格(而不是空格)的mediainfo。

到目前为止,我还没有找到解决方案。(我实际上使用的是zsh,而不是bash。)非常感谢所有帮助。Tnx。

杰夫·谢勒(Jeff Schaller)

如果您希望脚本的参数($1)最终作为mediainfo的参数,则只需将其放在此处:

# ...
mediainfo "$1" | grep Duration | sort -u
# ...

这适用于脚本的单个参数。更灵活地,您可以循环遍历脚本的所有参数,并将它们一次提供给mediainfo:

for file in "$@"
do
  mediainfo "$file" # ...
done

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Bash脚本参数包含空格不起作用

来自分类Dev

将包含空格的shell脚本参数传递为java系统属性

来自分类Dev

苹果脚本参数,路径中有空格

来自分类Dev

Korn 脚本参数

来自分类Dev

传递脚本参数

来自分类Dev

遍历bash脚本参数

来自分类Dev

FileMaker脚本参数问题

来自分类Dev

遍历bash脚本参数

来自分类Dev

要求您的脚本接受包含空格的参数

来自分类Dev

以数组形式传递的PowerShell脚本参数

来自分类Dev

PyCharm“运行配置”询问“脚本参数”

来自分类Dev

如何获取Unix脚本参数?

来自分类Dev

bash打印给定脚本参数

来自分类Dev

^节点脚本参数中的字符

来自分类Dev

函数的回显脚本参数

来自分类Dev

PyCharm“运行配置”要求“脚本参数”

来自分类Dev

使用`case`处理脚本参数

来自分类Dev

Shell脚本参数$ {1,,} _ name

来自分类Dev

在getopts之后解析脚本参数

来自分类Dev

bash打印给定脚本参数

来自分类Dev

如何顺序打印脚本参数?

来自分类Dev

可选脚本参数的典型语法

来自分类Dev

多次读取 bash 脚本参数

来自分类Dev

如何在DSC脚本资源中引用脚本参数

来自分类Dev

gnuplot内部列参数与容器bash脚本参数冲突

来自分类Dev

参数包含空格的问题

来自分类Dev

如何将包含空格的参数传递给包含gawk match()的脚本?

来自分类Dev

如何在bash中使用getopts解析脚本参数?

来自分类Dev

Google App Engine app.yaml PHP脚本参数