如何从bash中的输出中减去单词

  • 本文关键字:单词 输出 bash bash
  • 更新时间 :
  • 英文 :


我做了一个简单的bash脚本,将电影从.avi转换为.mp4,但现在我想做两件事。

  1. 让输出文件只有 *.mp4而不是 *.avi.mp4
  2. 转换完成后删除旧文件。

这是我的脚本。

#!/bin/bash

avconv -i "$1" -c:v libx264 -c:a copy -sn -crf 24 "$1".mp4
  1. 您应该做${1%.avi}.mp4,我们告诉Bash用.avi的后缀删除$1的内容,然后附加.mp4后缀。
  2. 我建议运行aconv ... && rm "$1",以便仅在转换成功时删除,因为&&操作员仅执行以前的命令成功的命令。

最终版本:

#!/bin/bash
avconv -i "$1" -c:v libx264 -c:a copy -sn -crf 24 "${1%.avi}.mp4" && rm "$1"

希望这有帮助=)

怎么样:

avconv -i "$1" -c:v libx264 -c:a copy -sn -crf 24 "${1/.avi/.mp4}" && rm "$1"

更新

响应评论,搜索和替换的语法是:

${1/oldstring/newstring}

所以,您可以以任何方式使用它。

相关内容

  • 没有找到相关文章

最新更新